从命令行进行连接

可以在多个客户端平台上使用 vsql 从命令行连接到数据库。

如果由于任何原因无法建立连接(例如您没有足够的权限或者服务器未在目标主机上运行),则 vsql 会返回错误并终止。

语法

/opt/vertica/bin/vsql [-h host] [ -p port ] [ option...] [ dbname [ username ] ]

参数

host
如果要连接到本地服务器,则此参数是可选的。可以提供 IPv4 或 IPv6 IP 地址,或者也可以提供主机名。

如果 Vertica 服务器同时使用 IPv4 和 IPv6 地址,并且您提供了主机名而非 IP 地址,则当 DNS 已配置为同时提供 IPv4 和 IPv6 地址时,您可以选择将 IPv4 地址与 -4 选项结合使用,还可以选择将 IPv6 地址与 -6 选项结合使用。如果您使用 IPv6 并提供 IP 地址,则必须在地址后面附加 %interface name

port
数据库服务器端口。

默认值: 5433

选项
一个或多个 vsql 命令行选项

如果数据库受密码保护,则您必须指定 -w 或 --password 命令行选项。

dbname
目标数据库的名称。如果未指定,vsql 会自动连接到指定的 hostport 上的数据库。
username
数据库用户名,默认情况下是您的系统用户名。

退出代码

vsql 在正常终止时返回 0 给 shell。否则,它返回以下值之一:

  • 1:发生严重错误 — 例如,内存不足或找不到文件

  • 2:与服务器的连接不正常,并且会话未进行交互

  • 3:脚本中发生了错误,并且设置了变量 ON_ERROR_STOP

  • 命令行中无法识别的单词可能会解释为数据库名称或用户名。

示例

以下示例显示如何通过将 vsql 输出重定向到输出文件 retail_queries.out 来捕获错误消息:

$ vsql --echo-all < retail_queries.sql > retail_queries.out 2>&1