未登录

信蚁社区 通行证

搜索
热搜: 统信UOS 麒麟
查看: 94|回复: 0

[金仓数据库] 人大金仓KCA | 数据库对象管理工具与命令行工具KSQL

[复制链接]

103

主题

4

回帖

339

积分

实习版主

Rank: 7Rank: 7Rank: 7Rank: 7

积分
339

最佳新人灌水之王优秀版主

发表于 2025-4-19 13:43:04 | 显示全部楼层 |阅读模式
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL

    一、知识预备
      1. 数据库对象管理工具 2. 命令行工具KSQL 3. KSQL元命令 4. KingBaseES中支持的环境变量 二、具体实施
        1. 切换EasyKStudio界面语言
      1. 使用EasyKStudio连接KingBaseES 2. 新建用户 3. 常用命令组合
        3.1 使用TCP/IP方式登录数据库 3.2 在连接中切换对象 3.3 执行SQL语句 3.4 查询相关信息 3.5 导出导出表数据



OS版本:CentOS-7-x86_64-Everything-2009
KES版本:KingbaseES_V008R006C008B0014_Lin64
许可证版本:license_39893_0.dat(开发版)
一、知识预备

1. 数据库对象管理工具

数据库对象管理工具是人大金仓提供的连接KES数据库的图形化客户端工具,可用于开发工程师对数据库项目进行开发,为DBA提供了丰富的运维功能,类似于Navicat。在安装KingbaseES的时候会自动安装数据库对象管理工具,可以在菜单中找到。
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-1.png

数据对象管理工具特点
    图形化操作方便开发人员编写和调试SQL及PL/SQL代码 对象展示直观,适合初学者 操作简单,省去命令编写
2. 命令行工具KSQL

KSQl是人大金仓提供给数据库管理员与KES数据库交互的命令行客户端命令,使用方式与mysql等命令类似。KSQL的一个缺点是不能通过Ctrl+L清屏,但是KSQL可以利用tab键多层级、持续智能提示和补全,通过配置和使用环境变量,可以快速登录数据库。
可以通过修改环境变量使命令行帮助信息为中文
  1. echo"export LANG=zh_CN.UTF_8">> ~/.bashrc
  2. source ~/.bashrc
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-2.png


KSQL的常见参数
参数说明
-h连接服务器的IP地址
-p连接服务器的端口号,设置过环境变量后可以不指定
-U连接数据库的用户名
-c连接数据库执行临时命令,命令执行完断开连接
-d指定连接时登录的数据库
-V打印数据库版本信息
-o将命令输出结果重定向到指定文件中
3. KSQL元命令

ksql提供了一组以\开头的快捷命令
查看元命令帮助
  1. ksql -Usystem-dtest
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-3.png


常用元命令介绍
参数说明
\d列出表、视图和序列
\q退出数据库交互
\du列出所有角色
\ds列出所有序列
\l列出所有数据库
\di列出索引
\i在文件中执行命令,可以用户运行SQL文件
\conninfo显示当前连接的相关信息
\!在shell中执行命令或启动一个交互式shell
4. KingBaseES中支持的环境变量

KSQL可以通过定义环境变量快速登录数据库
环境变量说明
KINGBASE_HOST设置默认登录的主机名
KINGBASE_PORT设置默认端口号
KINGBASE_DATABASE设置默认登录的数据库
KINGBASE_USER设置默认使用的用户名
LANG默认语言
二、具体实施

1. 切换EasyKStudio界面语言

[Step1]: 打开EasyKStudio,选择【Windows】,选择【Preferences】

人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-4.png


[Step2]: 选择【Database User Interface】
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-5.png


人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-6.png


1. 使用EasyKStudio连接KingBaseES

[Step1]: 新建数据库连接

人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-7.png

人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-8.png


人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-9.png


[Step2]: 填写完相关参数后,点击测试连接

人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-10.png


[Step3]: 点击【完成】

人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-11.png


[Step4]: 主界面

人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-12.png


2. 新建用户

配置需求
    创建用户 user_admin、 user_rw、user_r1、user_r2 创建用户时使用默认权限,密码均为 kingbase。 允许用户 user_r1 最多可同时创建 10 个连接。
[Step1]: 新建用户user_admin、user_rw、user_r2

人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-13.png

人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-14.png

人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-15.png


人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-16.png


[Step2]: 新建用户user_r1,限制最多可同时创建 10 个连接

人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-17.png


[Step3]: 验证:列出数据库用户
  1. ksql -Usystem -dtest -c "\du user*"
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-18.png


3. 常用命令组合

3.1 使用TCP/IP方式登录数据库

[Step1]: 使用-h选项指定IP地址
  1. ksql -h192.168.19.248 -dtest-Usystemselect inet_client_addr(),inet_client_port();
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-19.png


[Step2]: 使用连接串的方式登录数据库
  1. ksql 'hostaddr=192.168.19.248 port=52024 user=system dbname=test'
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-20.png


3.2 在连接中切换对象

[Step1]: 切换用户
  1. ksql -dtest-Usystem\c - user_admin
  2. \conninfo
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-21.png


[Step2]: 切换数据库
  1. ksql -dtest-Usystem\c kingbase
  2. \conninfo
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-22.png


[Step3]: 同时切换用户和数据库
  1. ksql -dtest-Usystem\c kingbase user_admin
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-23.png


3.3 执行SQL语句

[Step1]: 登录数据库,然后执行SQL语句
  1. ksql -d test -Usystem
  2. select*from sys.dual;
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-24.png


[Step2]: 非交互式执行SQL
  1. ksql -d test -Usystem -c "select * from sys.dual"
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-25.png


[Step3]: 无需登录数据库:执行多行SQL语句
  1. vim demo.sql
复制代码
  1. createtable student(
  2.    ID intprimarykey,
  3.    NAME varchar(20),
  4.    Birthday date);
复制代码
  1. ksql -dtest-Usystem-f"demo.sql"
  2. ksql -dtest-Usystem-c"select * from student"
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-26.png


[Step4]: 登录数据库:执行多行SQL语句
  1. vim insert.sql
复制代码
  1. INSERTINTO student
  2. VALUES(10001,'tom','1990-04-12'),(10002,'harry','1993-07-05'),(10003,'barry','1992-02-23');
复制代码
  1. ksql -dtest-Usystem\i insert.sql
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-27.png


3.4 查询相关信息

[Step1]: 查看表的详细信息
  1. ksql -dtest-Usystem\d student
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-28.png


[Step2]: 查看用户和角色信息
  1. ksql -dtest-Usystem\du
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-29.png


3.5 导出导出表数据

[Step1]: 将student表中的数据导出为csv格式
  1. \copy student to student.csv csv
  2. \!cat student.csv
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-30.png


[Step2]: 将student表中的数据导出为文本格式
  1. \copy student to student.txt
  2. \!cat student.txt
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-31.png


[Step3]: 将student表中的数据导出为二进制格式
  1. \copy student to student.dat binary
  2. \!cat student.dat
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-32.png


[Step4]: 将csv文件导入数据库表
  1. deletefrom student where ID=10001;deletefrom student where ID=10002;deletefrom student where ID=10003;
  2. \copy student from student.csv csv
  3. select*from student;
复制代码
人大金仓KCA | 数据库对象管理工具与命令行工具KSQL-33.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

快速回复 返回顶部 返回列表