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

06-01 1208阅读

人大金仓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

          数据对象管理工具特点

          • 图形化操作方便开发人员编写和调试SQL及PL/SQL代码
          • 对象展示直观,适合初学者
          • 操作简单,省去命令编写

            2. 命令行工具KSQL

            KSQl是人大金仓提供给数据库管理员与KES数据库交互的命令行客户端命令,使用方式与mysql等命令类似。KSQL的一个缺点是不能通过Ctrl+L清屏,但是KSQL可以利用tab键多层级、持续智能提示和补全,通过配置和使用环境变量,可以快速登录数据库。

            可以通过修改环境变量使命令行帮助信息为中文

            echo "export LANG=zh_CN.UTF_8" >> ~/.bashrc
            source ~/.bashrc
            

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

            KSQL的常见参数

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

            3. KSQL元命令

            ksql提供了一组以\开头的快捷命令

            查看元命令帮助

            ksql -Usystem -dtest
            

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

            常用元命令介绍

            参数说明
            \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

            [Step2]: 选择【Database User Interface】

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

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

            1. 使用EasyKStudio连接KingBaseES

            [Step1]: 新建数据库连接

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

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

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

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

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

            [Step3]: 点击【完成】

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

            [Step4]: 主界面

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

            2. 新建用户

            配置需求

            • 创建用户 user_admin、 user_rw、user_r1、user_r2
            • 创建用户时使用默认权限,密码均为 kingbase。
            • 允许用户 user_r1 最多可同时创建 10 个连接。

              [Step1]: 新建用户user_admin、user_rw、user_r2

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

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

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

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

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

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

              [Step3]: 验证:列出数据库用户

              ksql -Usystem -dtest -c "\du user*"
              

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

              3. 常用命令组合

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

              [Step1]: 使用-h选项指定IP地址

              ksql -h 192.168.19.248 -d test -Usystem
              select inet_client_addr(),inet_client_port();
              

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

              [Step2]: 使用连接串的方式登录数据库

              ksql 'hostaddr=192.168.19.248 port=52024 user=system dbname=test'
              

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

              3.2 在连接中切换对象

              [Step1]: 切换用户

              ksql -d test -Usystem
              \c - user_admin
              \conninfo
              

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

              [Step2]: 切换数据库

              ksql -d test -Usystem
              \c kingbase
              \conninfo
              

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

              [Step3]: 同时切换用户和数据库

              ksql -d test -Usystem
              \c kingbase user_admin
              

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

              3.3 执行SQL语句

              [Step1]: 登录数据库,然后执行SQL语句

              ksql -d test -Usystem
              select * from sys.dual;
              

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

              [Step2]: 非交互式执行SQL

              ksql -d test -Usystem -c "select * from sys.dual"
              

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

              [Step3]: 无需登录数据库:执行多行SQL语句

              vim demo.sql
              
              create table student(
                 ID int primary key,
                 NAME varchar(20),
                 Birthday date
              );
              
              ksql -d test -Usystem -f "demo.sql"
              ksql -d test -Usystem -c "select * from student"
              

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

              [Step4]: 登录数据库:执行多行SQL语句

              vim insert.sql
              
              INSERT INTO student
              VALUES
                 (10001,'tom','1990-04-12'),
                 (10002,'harry','1993-07-05'),
                 (10003,'barry','1992-02-23');
              
              ksql -d test -Usystem
              \i insert.sql
              

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

              3.4 查询相关信息

              [Step1]: 查看表的详细信息

              ksql -d test -Usystem
              \d student
              

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

              [Step2]: 查看用户和角色信息

              ksql -d test -Usystem
              \du
              

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

              3.5 导出导出表数据

              [Step1]: 将student表中的数据导出为csv格式

              \copy student to student.csv csv
              \! cat student.csv
              

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

              [Step2]: 将student表中的数据导出为文本格式

              \copy student to student.txt
              \! cat student.txt
              

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

              [Step3]: 将student表中的数据导出为二进制格式

              \copy student to student.dat binary
              \! cat student.dat
              

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

              [Step4]: 将csv文件导入数据库表

              delete from student where ID=10001;
              delete from student where ID=10002;
              delete from student where ID=10003;
              \copy student from student.csv csv
              select * from student;
              

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

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们。

目录[+]

取消
微信二维码
微信二维码
支付宝二维码