• kingbase之ksql命令工具


    一、ksql命令工具简介

      ksql是人大金仓提供给DBA的与KES数据库交互的命令行客户端程序。熟练使用ksql工具可以帮助DBA快速的操作和维护数据库。博文实验环境:

    • 操作系统:centos7.6
    • kingbase版本:V008R006C006B0021

    二、ksql使用示例

    1、获取命令帮助

    [kingbase@s166 bin]$ ./ksql --help

    2、指定用户登录test库

    [kingbase@s166 bin]$ ./ksql -U system test
    ksql (V8.0)
    Type “help” for help.

    test=#

    3、强制要求输入密码

      经实践测试,通过默认local socket登录不需要输入密码,及时使用-W参数强制要求输入密码,实际上任意输入值都可以完成验证。

    [kingbase@s166 bin]$ ./ksql -U system -W test
    Password:
    ksql (V8.0)
    Type “help” for help.

    test=#

    4、指定数据库地址登录

      指定了-h参数后,无论我们是否使用-W参数都要求输入用户名密码完成验证才可以登录数据库。

    [kingbase@s166 bin]$ ./ksql -U system -h 192.168.0.166 test
    Password for user system:
    ksql (V8.0)
    Type “help” for help.

    test=#

    5、指定数据库监听端口地址登录

      如果kingbase数据库实例配置了指定端口,则客户端连接的时候需要使用-p参数指定数据库端口,kingbase数据库服务默认监听端口54321。

    [kingbase@s166 bin]$ ./ksql -U system -h localhost -p 54321 test
    Password for user system:
    ksql (V8.0)
    Type “help” for help.

    test=#

    6、查看数据库版本

    [kingbase@s166 bin]$ ./ksql -V
    ksql (Kingbase) V008R006C006B0021

    7、查看数据库列表

    [kingbase@s166 bin]$ ./ksql -U system -l
    在这里插入图片描述

    8、连接指定的数据库

    [kingbase@s166 bin]$ ./ksql -U system -d booklist
    ksql (V8.0)
    Type “help” for help.

    booklist=#

    9、执行指定的sql脚本

    [kingbase@s166 bin]$ echo “select connections;” >> /tmp/test.sql
    [kingbase@s166 bin]$ ./ksql -U system -f /tmp/test.sql test
    connections
    -------------
    7
    (1 row)

    10、显示执行的sql脚本中的命令

      使用-e参数显示执行的sql脚本中的命令
    在这里插入图片描述

    11、不显示登录信息

    [kingbase@s166 bin]$ ./ksql -U system -q test
    test=#

    12、显示内部生产的查询命令

      如果我们需要了解内部产生的查询命令,可以使用-E参数,如下示例我们执行-l参数打印数据库列表,实际上执行的命令是select d.datname as “Name”…
    在这里插入图片描述

    13、将会话日志存储到指定文件

      使用-L命令指定将会话日志存储到指定路径。连接数据库后所有的操作都将记录下来。
    在这里插入图片描述

    14、将查询结果写入指定文件

      使用-o命令将ksql命令执行的查询结果存储到指定文件中。
    在这里插入图片描述

    15、调整结果为纵向展示

      使用-x参数调整行列,展示样式调整为纵向展示。
    在这里插入图片描述

    16、执行单行命令

      使用-c参数在ksql命令下直接执行命令并显示结果。
    在这里插入图片描述

    17、指定输出格式

      我们可以使用-H,–csv等指定输出为样式为html或者csv。
    在这里插入图片描述

    三、ksql命令参数说明

    1、命令语法

    用法:ksql [OPTION]… [DBNAME [USERNAME]]

    2、通用参数

    参数参数说明
    -c, --command=COMMAND连接数据库后执行单行命令,执行完成后退出连接
    -d, --dbname=DBNAME指定连接的数据库名称
    -f, --file=FILENAME连接数据库时执行的脚本,执行完成后退出数据库连接
    -l, --list打印数据库列表
    -v, --set=, --variable=NAME=VALUE设置数据库参数变量
    -V, --version打印数据库版本信息
    -X, --no-ksqlrc不读取启动文件(~/.ksqlrc)
    -1 (“one”), --single-transaction作为单个事务执行(如果非交互式)
    -?, --help获取命令帮助,然后退出

    3、输入输出参数

    参数参数说明
    -a,–echo-allecho来自脚本的所有输入
    -b,–echo-errorsecho失败的命令
    -e,–echo-queries发送到服务器的echo命令
    -E,–echo-hidden显示内部命令生成的查询
    -L,–log-file=FILENAME将会话日志发送到文件
    -n,–no-readline禁用增强的命令行编辑
    -o,–output=FILENAME将查询结果发送到文件(或
    -q,–quiet不输出登录提示信息
    -s,–single-step单步模式(确认每个查询)
    -S,–single-line单行模式(行尾终止SQL命令)

    4、输出格式参数

    参数参数说明
    -A, --no-align未对齐表输出模式
    –csv(逗号分隔值)表格输出模式
    -F, --field-separator=STRING设置未对齐输出的字段分隔符(默认值:“
    -H, --htmlhtml表格输出模式
    -P, --pset=VAR[=ARG]将打印选项VAR设置为ARG
    -R, --record-separator=STRING未对齐输出的记录分隔符(默认值:换行符)
    -t, --tuples-only不输出字段名
    -T, --table-attr=TEXT设置HTML表标记属性(例如,宽度、边框)
    -x, --expanded调整查询结果为纵向展示
    -z, --field-separator-zero将未对齐输出的字段分隔符设置为零字节
    -0, --record-separator-zero将未对齐输出的记录分隔符设置为零字节

    5、连接参数

    参数参数说明
    -h, --host=HOSTNAME连接数据库的主机地址或者socket路径,默认local socket
    -p, --port=PORT指定连接数据库端口,默认54321
    -U, --username=USERNAME连接数据库用户名,默认kingbase
    -w, --no-password允许不输入密码
    -W, --password强制要求输入密码
  • 相关阅读:
    离线数仓(四)【数仓数据同步策略】
    1024程序员节 | 电脑软件:SmartSystemMenu(窗口置顶工具)介绍
    为啥https比http慢
    python基础语言:字符串表示
    第十八天最大加号标志
    模型剪枝-Network Slimming算法分析
    MongoDB 选型
    基于C++11的数据库连接池(推荐)
    day02:DML DQL DCL
    Linux 文件锁的原理、实现和应用
  • 原文地址:https://blog.csdn.net/carefree2005/article/details/127508686