前言
金仓是一种多进程架构,每一个连接到服务器的会话,在服务器上面都会为该会话分配进程
图形化界面管理
新建数据库名

然后新建一个模式

再创建一个表

新建一个表,然后设置列名
记得要保存

查询数据

也可以新建数据表,用命令查询

里到这里可以看见,最后一条使用的命令

选中之后点断开,就没了
已经杀掉了指定的会话

命令
查看 KingbaseES 数据库的状态
sys_ctl status
sys_ctl start # 启动
KSQL工具命令
进入test数据库,以system用户
ksql test system
不需要总是手敲密码
sys_encpwd -H \* -D \* -P \* -U system -W kingbase


密码会放在这个隐藏文件里

可以看见不需要输入密码了

交互式运行sql命令
以 ; 分号分隔结束,然后执行下一条命令
ksql -d test -U system -c "执行的命令"

利用考题导入sql 批处理
使用-f参数
ksql test system -f /install/EXAM_v0.11.sql
KSQL常用的元命令

\l+ 列数所有数据库信息
比如 \l 列出所有的数据库

可以看见加了+号显示更多的信息

\l+ 数据库名 查看某一数据库信息

\dt 查看表的详细信息

如果设置搜索路径,可以直接\dt 查看
set search_patch =exam;
比如



\d+ 查看某个列的详细信息
指定列名称查看信息

\db+ 查看表空间信息

\dn+ 列出模式和权限

\dp+ 查看模式下中所有的表的信息
默认直接\dp+ 不指定模式,会根据当前的搜索路径,进行搜索

指定模块搜索表,要加 .*

\dv 查询关联列表的名称
\dv infomation_schema.*

\di+ 列出索引


\x 纵向显示

纵向显示

\t 列名显示

\o 记录执行的命令
- \o a.txt 保存到a.txt 文件中
- \o 结束记录
- ! 你想要执行的Linux命令

! 交互式执行Linux命令
! 后面要空格然后加上Linux名改了

\s 查看历史命令

\i 批处理sql语句
\i 后面是.sql的文件及绝对路径

使用元命令实现异构数据库交换
\copy 导出数据库表
\copy student to /home/kingbase/student.txt;
\copy student to /home/kingbase/student.csv csv;
\copy student to /home/kingbase/student.dat binary;

可以看见这三个文件导出成功

查看内容

\copy 导入数据库信息
create table s1 as select * from student with no data; 创建一个表,但是没有数据
select * from s1; 查看表的内容,发现没有内容
\copy s1 from /home/kingbase/student.data binary; 使用 \copy 命令导入文件student.data到s1表中

copy 和\copy 的区别

KSQL小技巧

sql命令
查看最大的并发连接数
show max_connections;

查看版本
select version;

查看连接服务端的客户端IP
select inet_client_addr;

查看客户端的端口
select inet_client_port;

查看当前连接的信息
\conninfo

创建用户以及该用户密码
create user user01 password 'r';

切换用户登陆数据库
可以切换以下

\c进行切换到db01数据库,以user01用户登陆
\c db01 user01
可以看见切换成功

查看该会话在服务端的进程id
select sys_backend_pid;

直接\c
以当前用户登陆当前数据库,意味着重连,也可以说是切换会话
