命令参考
详细的gsql 参数请参见表2-7、表2-8、表2-9 和表2-10。
表2-7 常用参数
参数
参数说明
取值范围
-c,
--command=COMMAND
声明gsql 要执行一条字符串命令然后退出。
——
-d, --dbname=DBNAME
指定想要连接的数据库名称。
gsql 还允许使用扩展的DBNAME ,即
'postgres[ql]://[user[:password]@][netloc]
[:port][,...][/dbname][?param1=value1&...]'
或
'[key=value] [...]'形式的连接串作为DBNAME,
gsql 将从连接串中解析连接信息,
并优先使用这
些信息。
字符串
-f, --file=FILENAME
使用文件作为命令源而不是交互式输入。gsql
将在处理完文件后结束。如果FILENAME 是-
(连字符),则从标准输入读取。
说明
环境场景:一主一备(8U32G)。
实测:读取200M 数据文件时,耗时约为8
分钟21 秒。
读取500M 数据文件时,耗时约为18 分41
秒。
建议
文件读取的时间随文件数据量逐渐增加,
如
果文件太大,
中间异常时需要重新读取,
同
时会导致系统OS 的IO 过载,建议文件大
小控制在500M 左右。
绝对路径或相
对路径,且满
足操作系统路
径命名规则。
-l, --list
列出所有可用的数据库,然后退出。
——
-v, --set, --
variable=NAME=VALUE
设置gsql 变量NAME 为VALUE。
——
GBase 8c 工具参考手册
南大通用数据技术股份有限公司
19
参数
参数说明
取值范围
-X, --no-gsqlrc
不读取启动文件
(系统范围的gsqlrc 或者用户的
~/.gsqlrc 都不读取)。
说明
启动文件默认为~/.gsqlrc,或通过PSQLRC
环境变量指定。
——
-1 ("one"), --single-
transaction
当gsql 使用-f 选项执行脚本时,会在脚本的开
头
和
结
尾
分
别
加
上
START
TRANSACTION/COMMIT 用以把整个脚本当
作一个事务执行。这将保证该脚本完全执行成
功,或者脚本无效。
说明
如果脚本中已经使用了START
TRANSACTION、
COMMIT、
ROLLBACK,
则该选项无效。
——
-?, --help
显示关于gsql 命令行参数的帮助信息然后退出。
——
-V, --version
显示gsql 版本信息然后退出。
——
表2-8 输入和输出参数
参数
参数说明
取值范围
-a, --echo-all
在读取行时向标准输出打印所有内容。
注意
使用此参数可能会暴露部分SQL 语句中的敏
感信息,如创建用户语句中的password 信息
等,请谨慎使用。
——
-e, --echo- queries
把所有发送给服务器的查询同时回显到标准输
出。
注意
使用此参数可能会暴露部分SQL 语句中的敏
感信息,如创建用户语句中的password 信息
等,请谨慎使用。
——
GBase 8c 工具参考手册
南大通用数据技术股份有限公司
20
参数
参数说明
取值范围
-E, --echo- hidden
回显由\d 和其他反斜杠命令生成的实际查询。
——
-k, --with- key=KEY
使用gsql 对导入的加密文件进行解密。
须知
对于本身就是shell 命令中的关键字符如单引
号(')或双引号("),Linux shell 会检测输
入的单引号(')或双引号(")是否匹配。如
果不匹配,shell 认为用户没有输入完毕,会
一直等待用户输入,从而不会进入到gsql 程
序。
不支持解密导入存储过程和函数。
——
-L, --log- file=FILE
NAME
除了正常的输出源之外,把所有查询输出记录到
文件FILENAME 中。
注意
使用此参数可能会暴露部分SQL 语句中的敏
感信息,如创建用户语句中的password 信息
等,请谨慎使用。
此参数只保留查询结果到相应文件中,主要目标
是为了查询结果能够更好更准确地被其他调用者
(例如自动化运维脚本)解析;而不是保留gsql
运行过程中的相关日志信息。
绝对路径或相
对路径,且满
足操作系统路
径命名规则。
-m, --maintenance
允许在两阶段事务恢复期间连接GBase 8c。
说明
该选项是一个开发选项,禁止用户使用,只
限专业技术人员使用,功能是:使用该选项
时,
gsql 可以连接到备机,
用于校验主备机数
据的一致性。
——
-n, --no-libedit
关闭命令行编辑。
——
-o, --output=
FILENAME
将所有查询输出重定向到文件FILENAME。
绝对路径或相
对路径,且满
足操作系统路
径命名规则。
GBase 8c 工具参考手册
南大通用数据技术股份有限公司
21
参数
参数说明
取值范围
-q, --quiet
安静模式,执行时不会打印出额外信息。
缺省时gsql 将
打印许多其他
输出信息。
-s, --single-step
单步模式运行。意味着每个查询在发往服务器之
前都要提示用户,用这个选项也可以取消执行。
此选项主要用于调试脚本。
注意
使用此参数可能会暴露部分SQL 语句中的敏
感信息,如创建用户语句中的password 信息
等,请谨慎使用。
——
-S, --single-line
单行运行模式,这时每个命令都将由换行符结束,
像分号那样。
——
-C, --enable-
client-encryption
当使用-C 参数连接本地数据库或者连接远程数据
库时,可通过该选项打开密态数据库开关。
——
表2-9 输出格式参数
参数
参数说明
取值范围
-A, --no-align
切换为非对齐输出模式。
缺省为对齐输
出模式
-F,
--field-separator=STRI
NG
设置域分隔符(默认为“|”)。
——
-H, --html
打开HTML 格式输出。
——
-P, --
pset=VAR[= ARG]
在命令行上以\pset 的风格设置打印选项。
说明
这里必须用等号而不是空格分隔名称和值。
例
如,把输出格式设置为LaTeX,可以键入-P
format=latex
——
-R, --record-
separator=STRING
设置记录分隔符。
——
GBase 8c 工具参考手册
南大通用数据技术股份有限公司
22
参数
参数说明
取值范围
-r
开启在客户端操作中可以进行编辑的模式。
缺省为关闭。
-t, --tuples- only
只打印行。
——
-T, --table- attr=TEXT
允许声明放在HTML table 标签里的选项。
使用时请搭配参数“-H,--html”,
指定为HTML 格式
输出。
——
-x, --
expanded
打开扩展表格式模式。
——
-z, --field-
separator-zero
设置非对齐输出模式的域分隔符为空。
使用时请搭配参数“-A, --no-align”,指定为非对齐
输出模式。
——
-0, --record-
separator-zero
设置非对齐输出模式的记录分隔符为空。
使用时请搭配参数“-A, --no-align”,指定为非对齐
输出模式。
——
-2, --pipeline
使用管道传输密码,禁止在终端使用,必须和-c
或者-f 参数一起使用。
——
-g,
打印来自文件的所有SQL。
——
表2-10 连接参数
参数
参数说明
取值范围
-h, --host=
HOSTNAME
指定正在运行服务器的主机名或者Unix 域
套接字的路径。
如果省略主机名,
gsql 将通过Unix 域套
接字与本地主机的服
务器相联,或者在没
有Unix 域套接字的
机器上,通过TCP/IP
与localhost 连接。
-p, --port=PORT
指定数据库服务器的端口号。
可以通过port 参数修改默认端口号。
0 到65535
GBase 8c 工具参考手册
南大通用数据技术股份有限公司
23
参数
参数说明
取值范围
-U, --username=USER
NAME
指定连接数据库的用户。
说明
通过该参数指定用户连接数据库时,
需
要同时提供用户密码用以身份验证。
您
可以通过交换方式输入密码,
或者通过
-W 参数指定密码。
用户名中包含有字符$,
需要在字符$前
增加转义字符才可成功连接数据库。
字符串。默认使用与
当前操作系统用户同
名的用户。
-W, --password=PASS
WORD
当使用-U 参数连接远端数据库时,可通过
该选项指定密码。
说明
数据库主节点所在服务器后连接本地
数据库主
节点实例时,
默认使用trust 连接,
会忽
略此参数。
用户密码中包含特殊字符“\”和“`”时,
需要增加转义字符才可成功连接数据
库。
如果用户未输入该参数,
但是数据库连
接需要用户密码,
这时将出现交互式输
入,请用户输入当前连接的密码。该密
码最长长度为999 字节,受限于GUC
参数password_max_length 的最大值。
符合密码复杂度要
求。