はじめに
こちらの記事では、vsql のコマンドラインオプションについて記載します。
知っておくと便利なオプションも多数ありますので、ぜひ参考にしていただければと思います。
使用可能なコマンドラインオプション
一般的なオプション
オプション | 説明 |
|---|---|
--command <command> | 指定した単一のコマンドを実行して、vsql を終了します。 |
--dbname <dbname> | 接続するデータベースの名前を指定します。 |
--file <filename> | コマンドを対話形式で読み取る代わりに、指定したファイルを実行します。 |
--help | vsql のコマンドラインオプションに関するヘルプを表示します。 |
--timing | 各 SQL ステートメントの実行時間(ミリ秒単位)を表示する \timing メタコマンドを有効化します。 |
--list | 使用可能なすべてのデータベース名を返します。 |
--set <assignment> | vsql 内で使用可能な変数の割り当てを行います。 |
--version | vsql のバージョンを表示します。 |
--no-vsqlr | すべてのコマンドライン編集および履歴機能を無効化します。 |
接続オプション
オプション | 説明 |
|---|---|
-4 | デュアルスタック環境 (*) でホスト名を解決する場合、 IPv4 アドレスを優先します。 |
-6 | デュアルスタック環境 (*) でホスト名を解決する場合、 IPv6 アドレスを優先します。 |
-B <port> [,...] | 接続バックアップサーバホスト名/ポート番号を設定します(デフォルト:設定なし)。 |
--enable-connection-load-balance | ロードバランス接続を有効にします(デフォルト:無効)。 |
--host <hostname> | データベースサーバのホスト名を指定して、接続先データベースを指定します。 |
-k <krb-service> | Kerberos プリンシパルのサービス名部分を提供します(デフォルト:vertica)。 |
-K <krb-host> | Kerberos プリンシパルのインスタンスまたはホスト名部分を提供します。 |
--sslmode | データベースサーバへの SSL 接続を確立するためのポリシーを指定します。 |
--port <port> | データベース接続をリッスンする TCP ポートまたはローカルソケットファイル拡張子を指定します。 |
--username <username> | デフォルトユーザ(通常は dbadmin ユーザ)ではなく、指定したユーザとしてデータベースに接続します。 |
-w <password> | データベースユーザのパスワードを指定します。 |
--password | データベースに接続する前にパスワードの入力を要求します。(-w オプションを指定しない場合と同等です) |
(*) IPv4 と IPv6 の異なるプロトコルスタックが共存した環境
出力フォーマット
オプション | 説明 |
|---|---|
--no-align | 非整列出力モードに切り替えます。 |
-b | コマンド完了時にビープ音を鳴らします。 |
--field-separator <separator> | 非整列出力モード時のフィールド区切り文字を指定します(デフォルト: "|" )。 |
--html | HTML表形式出力をオンにします。 |
--pset <assignment> | \pset メタコマンドと同等のスタイルで表示オプションを指定できます。 |
-Q | クエリ実行結果末尾のレコード区切り文字をオンにします。 |
--record-separator <separator> | レコード区切り文字を指定します。 |
--tuples-only | 列名、結果の行カウントフッターなどの表示を無効化します。 |
--table-attr <options> | HTML tableタグ内に配置するオプションを指定できます。 |
--expanded | 拡張テーブルフォーマットモードを有効化します。 |
入力および出力オプション
オプション | 説明 |
|---|---|
--echo-all | 読み取られたすべての入力を標準出力に出力します。 |
--echo-queries | データベースサーバに送信されたすべての SQL コマンドを標準出力に出力します。 |
-E | 内部コマンドによって生成されたクエリを表示します。 |
-n | コマンドライン編集を無効にします。 |
--output <filename> | すべてのクエリ出力を <filename> に書き込みます。 |
--quiet | vsql をサイレントモード(ウェルカムメッセージなどの情報出力なしで)で実行します。 |
--single-step | スクリプトをデバッグするためにシングルステップモードで実行します。 |
--single-line | セミコロンを記載しなくとも、改行が SQL コマンドの終了を意味する単一行モードで実行します。 |
使用例
上記で紹介したオプションを実際に使用している記事を使用例として一部ご紹介します。
SELECT結果をCSV出力する方法
(使用オプション:-w,-A,-F,-t,-P,-X,-n,-q,-c)
SELECT結果をCSV出力する方法(その2)
(使用オプション:-w,-A,-F,-t,-o)
ロードバランスおよび接続時フェイルオーバー機能を使用したvsqlからの接続
(使用オプション:-w,-h,-B,-C,-U)
検証バージョンについて
この記事の内容はVertica 9.2で確認しています。
更新履歴
2019/10/03 本記事を公開