sfsqlの開始と停止 --- 廃止

このトピックでは、 sfsql を使用してSnowflakeに接続し、クエリとDDL/DMLステートメントを実行するセッションを開始し、終了時にセッションを閉じる方法について説明します。

このトピックの内容:

Snowflakeへの接続とセッションの開始

Snowflakeに接続してセッションを開始するには、 sfsql スクリプトがあるディレクトリに移動し、次の構文を使用してスクリプトを実行します。

sfsql [ -u <user> ] [ -c <password> ] [ -d <database> ] [ -s <schema> ] ... [ -h ]

注釈

Linux環境では、スクリプト名の前にドットスラッシュを付ける必要があります(例: ./sfsql)。 client インストールディレクトリ以外のディレクトリからクライアントを起動する場合は、スラッシュの後にパスも含める必要があります。

パラメーター

接続パラメーター

login.defaults の同等パラメーター

説明

-g <ホスト>

GSIP=<ホスト>

接続先のホスト/IP。クライアントがSnowflakeからダウンロードされたときに、デフォルトで login.defaults に設定されます。

US 西部におけるアカウントの <ホスト> の形式: <アカウント名>.snowflakecomputing.com

他のすべての地域におけるアカウントの <ホスト> の形式: <アカウント名>.<地域ID>.snowflakecomputing.com

-a <アカウント名>

ACCOUNT=<名前>

接続先のSnowflakeアカウント。クライアントがSnowflakeからダウンロードされたときに、デフォルトで login.defaults に設定されます。

-u <ユーザー>

USER=<ログイン名>

接続するユーザーのログイン名。このパラメーターを指定する場合、 -c パラメーターも指定する必要があります。

-c <パスワード>

PASSWORD=<パスワード>

ユーザーのパスワード。

-b <認証方式>

AUTHENTICATOR=<認証方式>

認証には、Snowflakeの代わりにSAML 2.0準拠のIdPを使用します。

-r <ロール>

ROLE=<名前>

Snowflakeのオブジェクトにアクセスするためにデフォルトで使用するロール(ログイン後に変更可能)。

-d <データベース>

DATABASE=<名前>

デフォルトで使用するデータベース(ログイン後に変更可能)。

-s <スキーマ>

SCHEMA=<名前>

デフォルトで使用するデータベーススキーマ(ログイン後に変更可能)。

-w <ウェアハウス>

WAREHOUSE=<名前>

クエリ、ロードなどにデフォルトで使用する仮想ウェアハウス(ログイン後に変更可能)。

-f <sqlファイル>

N/A

指定された SQL ファイルを実行します。このパラメーターが指定されていない場合、クライアントはインタラクティブモードで接続します。

-t

TRACING=<レベル>

ログレベル。

-y <プロキシホスト>

PROXY_HOST=<ホスト>

HTTPプロキシホスト。

-z <プロキシポート>

PROXY_PORT=<ポート>

HTTPプロキシホストのポート。

-m <mfaパスコード>

PASSCODE=<mfaパスコード>

MFAパスコード。

-n

PASSCODEINPASSWORD=true

MFAパスワードに埋め込まれたパスコード。

-k

EXITONERROR=true

エラーが発生した場合、クライアントを終了します。

-h

N/A

ログインパラメータのヘルプ(このリスト)。

注釈

login.defaults またはコマンドラインでログイン名またはパスワードを指定しない場合、クライアントはログイン時にそれらを入力するように求めます。

間違ったログイン名またはパスワードを入力すると、クライアントはSnowflakeに接続せず、HenPlusシェルコマンドラインを終了します。その後、再度ログインする前に、シェルを終了する必要があります(exitquit を入力するか、 [CTRL]-d キーボードコンボを使用します)。または、HenPlusシェルで、 connect の後に有効なJDBC接続文字列を入力してログインできます。

ログイン中に、クライアントは、クライアントが使用するJDBCドライバーのバージョンと、使用可能な最新バージョンのドライバー(使用中のバージョンと異なる場合)を表示します。この情報は、クライアントの問題をトラブルシューティングする際に役立ちます。

ログインに成功すると、コマンドラインはユーザーのログイン名とセッションが接続されているホストを <ログイン名>@snowflake:<アカウント名>.snowflakecomputing.com の形式で表示します。

次の例では、 user1 という名前のSnowflakeユーザーと xy12345 アカウントのパスワード 1234567a を使用して、 /Users/user1 という名前のディレクトリのLinuxまたは macOS 環境にインストールされたクライアントを起動します。

$ cd /Users/user1/client
$ ./sfsql -u user1 -c 1234567a

using GNU readline (Brian Fox, Chet Ramey), Java wrapper by Bernhard Bablok
henplus config at /Users/ybrenman/.henplus
----------------------------------------------------------------------------
 HenPlus II 0.9.8 "Yay Labor Day"
 Copyright(C) 1997..2009 Henner Zeller <H.Zeller@acm.org>
 HenPlus is provided AS IS and comes with ABSOLUTELY NO WARRANTY
 This is free software, and you are welcome to redistribute it under the
 conditions of the GNU Public License <http://www.gnu.org/licenses/gpl2.txt>
----------------------------------------------------------------------------
HenPlus II connecting
 url 'jdbc:snowflake://xy12345.snowflakecomputing.com:443/?account=xy12345&user=user1&ssl=on'
 driver version 2.3
 Snowflake - 1.0 (driver change version: 2.3.1, latest change version: 2.4.38)
no transactions.
 No Transaction *

user1@snowflake:xy12345.snowflakecomputing.com>

セッションの終了とクライアントの終了

現在のSnowflakeセッションを閉じて sfsql を終了するには、コマンドラインで exit または quit と入力します。

Snowflakeセッションを閉じると、

  • すべてのインプロセスクエリと DDL/DML ステートメントはキャンセルされます。

  • セッション中に作成されたすべての一時テーブルは削除されます。

注釈

[CTRL]-d と入力すると、 sfsql は終了しますが、HenPlusシェルは閉じません。HenPlusシェルを閉じるには、 exit または quit (または [CTRL]-d を再入力)を入力する必要があります。