前言
金仓是一种多进程架构,每一个连接到服务器的会话,在服务器上面都会为该会话分配进程
图形化界面管理
新建数据库名
然后新建一个模式
再创建一个表
新建一个表,然后设置列名
记得要保存
查询数据
也可以新建数据表,用命令查询
里到这里可以看见,最后一条使用的命令
选中之后点断开,就没了
已经杀掉了指定的会话
命令
查看 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
以当前用户登陆当前数据库,意味着重连,也可以说是切换会话