SnowSQL을 통해 연결하기

이 항목에서는 연결 매개 변수를 수동으로 입력하여 Snowflake에 연결하는 방법에 대해 설명합니다. 그런 다음 이 항목에서는 편리하게 사용할 수 있도록 기본 연결을 구성하는 방법과 대체 연결 설정을 사용하거나 여러 동시 세션을 생성하기 위해 1개 이상의 명명된 연결 을 구성하는 방법에 대해 설명합니다.

이 항목의 내용:

연결 구문

$ snowsql <connection_parameters>

여기서, <연결_매개 변수> 는 다음 중 1개 이상입니다. 각 매개 변수에 대한 자세한 설명은 이 항목의 연결 매개 변수 참조 를 참조하십시오.

매개 변수

설명

-a, --accountname TEXT

사용자의 계정 식별자입니다. $SNOWSQL_ACCOUNT를 수여합니다.

-u, --username TEXT

Snowflake에 연결할 사용자 이름입니다. $SNOWSQL_USER를 수여합니다.

-d, --dbname TEXT

사용할 데이터베이스입니다. $SNOWSQL_DATABASE를 수여합니다.

-s, --schemaname TEXT

사용할 데이터베이스의 스키마입니다. $SNOWSQL_SCHEMA를 수여합니다.

-r, --rolename TEXT

사용할 역할 이름입니다. $SNOWSQL_ROLE을 수여합니다.

-w, --warehouse TEXT

사용할 웨어하우스입니다. $SNOWSQL_WAREHOUSE를 수여합니다.

-h, --host TEXT

연결을 위한 호스트 주소입니다. $SNOWSQL_HOST를 수여합니다. (사용되지 않음)

-p, --port INTEGER

연결을 위한 포트 번호입니다. $SNOWSQL_PORT를 수여합니다. (사용되지 않음)

--region TEXT

리전. $SNOWSQL_REGION을 수여합니다. (사용되지 않음. 대신 -a 또는 –accountname 사용)

-m, --mfa-passcode TEXT

다단계 인증(MFA)에서 사용할 토큰

--mfa-passcode-in-password

비밀번호의 마지막에 MFA 암호를 추가합니다.

--abort-detached-query

클라이언트와 서버 간의 연결이 끊어지면 쿼리를 중단합니다. 기본적으로, 연결이 끊어져도 쿼리가 중단되지 않습니다.

--probe-connection

Snowflake에 대한 연결을 테스트합니다. 이 옵션은 TLS/SSL 인증서 체인을 출력할 때 주로 사용됩니다.

--proxy-host TEXT

(DEPRECATED. HTTPS_PROXY 및 HTTP_PROXY 환경 변수를 사용합니다.) 프록시 서버 호스트 이름입니다. $SNOWSQL_PROXY_HOST를 수여합니다.

--proxy-port INTEGER

(DEPRECATED. HTTPS_PROXY 및 HTTP_PROXY 환경 변수를 사용합니다.) 프록시 서버 포트 번호입니다. $SNOWSQL_PROXY_PORT를 수여합니다.

--proxy-user TEXT

(DEPRECATED. HTTPS_PROXY 및 HTTP_PROXY 환경 변수를 사용합니다.) 프록시 서버 사용자 이름입니다. $SNOWSQL_PROXY_USER를 수여합니다. 프록시 서버 비밀번호에 대해 $SNOWSQL_PROXY_PWD를 설정합니다.

--authenticator TEXT

인증자: 〈snowflake〉, 〈externalbrowser〉(IdP 및 웹 브라우저를 사용하기 위해), https://<okta_계정_이름>.okta.com(기본적으로 Okta를 사용하기 위해) 또는 〈oauth〉(OAuth를 사용하여 인증하기 위해).

-v, --version

현재 SnowSQL 버전을 표시하거나 값으로 제공된 경우 특정 버전을 사용합니다.

--noup

이 실행에 대한 자동 업그레이드를 비활성화합니다. -v에 아무런 버전도 지정하지 않으면 ~/.snowsql/의 최신 버전이 사용됩니다.

-D, --variable TEXT

&<var>에서 참조할 변수를 설정합니다. -D tablename=CENUSTRACKONE 또는 –variable db_key=$DB_KEY

-o, --option TEXT

SnowSQL 옵션을 설정합니다. Snowflake 설명서에서 옵션 참조를 참조하십시오.

-f, --filename PATH

실행할 파일입니다.

-q, --query TEXT

실행할 쿼리입니다.

--config PATH

SnowSQL 구성 파일의 경로와 이름입니다. 기본적으로 ~/.snowsql/config입니다.

-P, --prompt

$SNOWSQL_PWD 환경 변수에 저장된 것과 다른 비밀번호를 지정할 수 있도록 대화형 비밀번호 프롬프트 를 강제 실행합니다.

-M, --mfa-prompt

MFA의 두 번째 토큰에 대한 프롬프트를 강제로 실행합니다.

-c, --connection TEXT

사용할 연결 매개 변수의 명명된 세트입니다.

--single-transaction

자동 커밋이 비활성화된 상태로 연결합니다. 문을 BEGIN/COMMIT으로 둘러싸 단일 트랜잭션으로 실행하여 모든 명령이 성공적으로 완료되거나 아무런 변경 사항도 적용되지 않도록 합니다.

--private-key-path PATH

개인 키 파일의 경로입니다.

--disable-request-pooling

연결 풀링을 비활성화합니다.

-U, --upgrade

SnowSQL을 최신 버전으로 강제로 업그레이드합니다.

-K, --client-session-keep-alive

사용자의 활동이 없는 경우에도 세션을 무기한 활성 상태로 유지합니다.

-?, --help

이 메시지를 표시하고 종료합니다.

연결할 때 비밀번호 지정하기

비밀번호는 연결 매개 변수를 통해 전달할 수 없습니다. 비밀번호는 다음 방법 중 1개로 지정해야 합니다.

  • SnowSQL에서 대화형 프롬프트 를 통해 입력됩니다(비밀번호에만 적용됨).

  • password 옵션을 사용하여 SnowSQL 구성 파일에 정의됩니다. 자세한 내용은 이 항목의 기본 연결 설정 구성하기 섹션을 참조하십시오.

  • SNOWSQL_PWD 환경 변수를 사용하여 지정됩니다. 자세한 내용은 이 항목의 환경 변수 사용하기 섹션을 참조하십시오.

참고

Windows 환경에서 Cygwin 터미널은 계정 식별자, 사용자 이름 또는 비밀번호를 요청하는 메시지를 표시하지 않습니다. 왜냐하면 Cygwin 터미널에서는 SnowSQL이 TTY 모드를 활성화할 수 없기 때문입니다.

환경 변수 사용하기

현재 환경 변수는 비밀번호, 호스트 및 데이터베이스와 같은 일부 명령줄 매개 변수 값만 미리 지정하기 위한 용도로 사용할 수 있습니다. 환경 변수는 -D 또는 --variable 연결 매개 변수를 사용하여 SnowSQL을 시작할 때 명령줄에 명시적으로 지정하는 경우를 제외하고 SnowSQL 변수를 대체하기 위해 사용할 수 없습니다. 예:

Linux/macOS
$ snowsql ... -D tablename=CENUSTRACKONE --variable db_key=$DB_KEY
Windows
$ snowsql ... -D tablename=CENUSTRACKONE --variable db_key=%DB_KEY%

위의 예에서 --variable 은 이름이 db_key 인 Snowflake 변수를 DB_KEY 환경 변수로 설정합니다.

기본 연결 설정 구성하기

Snowflake는 연결 프로세스를 단순화하기 위해 기본 연결 매개 변수를 구성하는 것을 권장합니다. 이후에 Snowflake에 연결할 때 Snowflake 계정 식별자, 사용자 이름 및 기본값으로 구성된 기타 매개 변수를 생략할 수 있습니다.

기본 설정을 구성하려면:

  1. 텍스트 편집기에서 SnowSQL 구성 파일 (config) 을 엽니다. 이 파일의 기본 위치:

    Linux/macOS

    ~/.snowsql/

    Windows

    %USERPROFILE%\.snowsql\

    참고

    기본 위치는 SnowSQL을 시작할 때 --config path 명령줄 플래그를 지정하여 변경할 수 있습니다.

  2. [connections] 섹션에서 다음 매개 변수에서 주석 기호를 제거하고 올바른 값을 지정하여 기본 연결 매개 변수를 구성합니다.

    [connections]
    #accountname = <string>   # Account identifier to connect to Snowflake.
    #username = <string>      # User name in the account. Optional.
    #password = <string>      # User password. Optional.
    #dbname = <string>        # Default database. Optional.
    #schemaname = <string>    # Default schema. Optional.
    #warehousename = <string> # Default warehouse. Optional.
    #rolename = <string>      # Default role. Optional.
    #authenticator = <string> # Authenticator: 'snowflake', 'externalbrowser' (to use any IdP and a web browser),  https://<okta_account_name>.okta.com (to use Okta natively), 'oauth' to authenticate using OAuth.
    

    주의

    • 비밀번호는 config 파일에 일반 텍스트로 저장됩니다. 액세스를 제한하려면 반드시 파일을 명시적으로 보호해야 합니다. 예를 들어, Linux 또는 macOS에서 chmod 를 실행하여 읽기 권한을 설정할 수 있습니다.

      $ chmod 700 ~/.snowsql/config
      
    • 비밀번호에 특수 문자가 포함되면 비밀번호를 작은따옴표 또는 큰따옴표로 묶어야 합니다.

SnowCD를 사용한 Snowflake로의 네트워크 연결 확인하기

구성한 후에는 SnowCD 를 사용하여 Snowflake로의 네트워크 연결을 평가하고 문제를 해결할 수 있습니다.

초기 구성 프로세스 및 언제라도 필요할 때 SnowCD를 사용하여 Snowflake로의 네트워크 연결을 평가하고 문제를 해결할 수 있습니다.

명명된 연결 사용하기

Snowflake에 동시 연결을 여러 개 생성하거나 단순히 다른 연결 구성 세트를 저장하려면 1개 이상의 명명된 연결을 정의할 수 있습니다.

구성 파일에 명명된 연결 정의하기

  1. 텍스트 편집기에서 config 구성 파일을 엽니다. 이 파일의 기본 위치는 다음과 같습니다.

    Linux/macOS

    ~/.snowsql/

    Windows

    %USERPROFILE%\.snowsql\

  2. 명명된 각 연결에 대해 이름이 고유한 별도의 [connections] 섹션을 추가합니다.

    예를 들어, 다음은 계정 식별자 myorganization-myaccount 가 포함된 Snowflake 계정에 대한 my_example_connection 연결을 보여줍니다.

    [connections.my_example_connection]
    accountname = myorganization-myaccount
    username = jsmith
    password = xxxxxxxxxxxxxxxxxxxx
    dbname = mydb
    schemaname = public
    warehousename = mywh
    

명명된 연결을 사용하여 Snowflake에 연결하기

-c <문자열> (또는 --connection <문자열>) 연결 매개 변수를 사용하여 명명된 연결을 지정합니다. 여기서 <문자열>구성 파일 에 정의된 연결의 이름입니다.

예를 들어, 이 항목의 구성 파일에 명명된 연결 정의하기 에서 생성한 my_example_connection 연결을 사용하여 연결합니다.

$ snowsql -c my_example_connection

키 페어 인증 & 키 페어 순환 사용하기

SnowSQL은 키 페어 인증 및 키 순환을 지원합니다. 암호화되지 않았거나 암호화된 키 페어를 사용할 수 있습니다.

조심

암호화되지 않은 개인 키가 지원되지만, Snowflake에 연결할 때는 반드시 암호화된 개인 키를 사용하는 것이 좋습니다. 암호화되지 않은 개인 키는 권한 없는 사람이 개인 키에 대한 액세스 권한을 얻을 경우 무단 사용에 대한 보호 기능이 없습니다.

다음 절차에서는 권장되는 암호화된 키 페어 인증을 사용하는 것으로 가정합니다.

  1. 시작하려면 제공되는 안내를 따라 키 페어 인증 & 키 페어 순환 를 구성합니다.

  2. 구성 파일 또는 명령줄에서 개인 키 파일의 경로를 지정합니다.

  • 구성 파일에서:

    • private_key_path 연결 매개 변수를 연결 설정에 추가하고 생성한 개인 키 파일의 로컬 경로를 지정합니다. 구문은 OS에 고유하지 않습니다.

      지원되는 OS
      private_key_path = <path>/rsa_key.p8
      
    • SNOWSQL_PRIVATE_KEY_PASSPHRASE 환경 변수를 사용하여 개인 키 파일의 암호를 해독하기 위한 암호 구문을 설정합니다. Linux 또는 MacOS의 경우 암호 구문을 따옴표로 묶지는 않지만, Windows의 경우 작은따옴표 또는 큰따옴표를 사용해야 합니다.

      Linux/macOS
      export SNOWSQL_PRIVATE_KEY_PASSPHRASE=<passphrase>
      
    Windows
    set SNOWSQL_PRIVATE_KEY_PASSPHRASE='<passphrase>'
    
  • 명령줄에서:

    private-key-path 연결 매개 변수를 포함하고 암호화된 개인 키 파일의 경로를 지정합니다.

    $ snowsql -a <account_identifier> -u <user> --private-key-path <path>/rsa_key.p8
    

    SnowSQL에서 사용자의 암호 구문을 요청합니다. 또는, 위의 설명과 같이 SNOWSQL_PRIVATE_KEY_PASSPHRASE 환경 변수를 사용하여 개인 키 파일의 암호를 해독하기 위한 암호 구문을 설정합니다.

프록시 서버 사용하기

프록시 서버를 사용하려면 다음 환경 변수를 구성합니다.

  • HTTP_PROXY

  • HTTPS_PROXY

  • NO_PROXY

참고

프록시 매개 변수(즉, 명령줄 및 config 파일의 proxy_host, proxy_port, proxy_userSNOWFLAKE_PROXY_PWD)는 더 이상 사용되지 않습니다. 대신, 환경 변수를 사용하십시오.

그러나 SnowSQL 1.1.20 이상 버전이 필요합니다. 현재 버전을 확인하려면 SnowSQL 버전 관리 이해하기 를 참조하십시오.

예:

Linux/macOS
export HTTP_PROXY='http://username:password@proxyserver.company.com:80'
export HTTPS_PROXY='http://username:password@proxyserver.company.com:80'
Windows
set HTTP_PROXY=http://username:password@proxyserver.company.com:80
set HTTPS_PROXY=http://username:password@proxyserver.company.com:80

Snowflake의 보안 모델에서는 보안 소켓 레이어(SSL) 프록시(HTTPS 인증서 사용)를 사용할 수 없습니다. 프록시 서버는 공개적으로 사용 가능한 인증 기관(CA)을 사용해야 하며, 손상된 프록시를 통한 MITM(메시지 가로채기) 공격과 같은 잠재적인 보안 위험을 줄여야 합니다.

SSL 프록시를 반드시 사용해야 하는 경우 통신 중에 인증서가 변경되지 않도록 Snowflake 인증서를 통과하도록 서버 정책을 업데이트하는 것이 좋습니다.

선택 사항으로, NO_PROXY 를 사용하여 특정 통신에 대한 프록시를 우회할 수 있습니다. 예를 들어, Amazon S3는 NO_PROXY=".amazonaws.com" 을 지정하여 우회할 수 있습니다.

웹 브라우저에서 페더레이션 인증/SSO 사용하기

SnowSQL에서 브라우저 기반 SSO 인증 을 사용하려면, --authenticator externalbrowserSnowSQL 연결 매개 변수 를 추가합니다.

예:

$ snowsql -a <account_identifier> -u <username> --authenticator externalbrowser

페더레이션 인증/SSO에 대한 자세한 내용은 페더레이션 인증 관리하기/사용하기 을 참조하십시오.

OCSP 커넥터 또는 드라이버 버전 확인하기

Snowflake는 OCSP를 사용하여 Snowflake로 연결할 때 인증서 체인을 평가합니다. 드라이버 또는 커넥터 버전 및 구성 모두를 통해 OCSP 동작이 결정됩니다. 드라이버 또는 커넥터 버전, 구성 및 OCSP 동작에 대한 자세한 내용은 OCSP 구성 를 참조하십시오.

OCSP 응답 캐시 서버

참고

OCSP 응답 캐시 서버는 현재 SnowSQL 1.1.55 이상 버전에서 지원됩니다.

Snowflake 클라이언트는 데이터를 실제로 전송하기 전 보안 연결을 설정하는 《핸드셰이크》를 사용하여 Snowflake 서비스 엔드포인트에 대한 모든 연결을 시작합니다. 핸드셰이크의 일부로 클라이언트는 서비스 엔드포인트에 대해 TLS/SSL 인증서를 인증합니다. CA(인증 기관)에 대한 OCSP(온라인 인증서 상태 프로토콜) 서버 중 1개에 클라이언트 인증서 요청을 전송하여 인증서의 해지 상태를 확인합니다.

OCSP 서버의 응답이 적절한 시간 이상 동안 지연되면 연결이 실패하게 됩니다. 해지 상태를 유지하여 이러한 문제를 완화하는 데 도움이 되는 캐시는 다음과 같습니다.

  • 메모리 캐시, 프로세스의 수명 동안 지속됩니다.

  • 파일 캐시, 캐시 디렉터리(예: ~/.cache/snowflake 또는 ~/.snowsql/ocsp_response_cache)가 삭제될 때까지 지속됩니다.

  • Snowflake OCSP 응답 캐시 서버, 매시간 CA의 OCSP 서버에서 OCSP 응답을 가져와 24시간 동안 저장합니다. 그러면 클라이언트는 이 서버 캐시에서 지정된 Snowflake 인증서의 유효성 검사 상태를 요청할 수 있습니다.

    중요

    If your server policy denies access to most or all external IP addresses and web sites, you must allowlist the cache server address to allow normal service operation. The cache server hostname is ocsp*.snowflakecomputing.com:80.

    어떤 이유로든 캐시 서버를 비활성화해야 하는 경우 SF_OCSP_RESPONSE_CACHE_SERVER_ENABLED 환경 변수를 false 로 설정합니다. 이 값은 대/소문자를 구분하며 반드시 소문자여야 함에 유의하십시오.

캐시 레이어에 OCSP 응답이 포함되어 있지 않으면 클라이언트는 CA을 위한 OCSP 서버에서 유효성 검사 상태를 직접 가져오기 위해 시도합니다.

연결 오류 처리

Cannot open self /usr/bin/snowsql or archive /usr/bin/snowsql.pkg (Linux만 해당)

pyinstaller (SnowSQL을 Python 소스 코드에서 독립 실행형 실행 파일로 패키징하는 프로그램)에서의 제한으로 인해, prelink 는 실수로 snowsql 실행 파일의 일부를 제거하고 이러한 오류를 유발합니다.

이러한 문제를 방지하기 위해 SnowSQL 설치 관리자는 prelink 가 파일을 변경하지 않도록 snowsql 실행 파일에 대한 /etc/prelink.conf.d/snowsql.conf 에 위치한 prelink 구성 파일을 업데이트하기 위해 시도합니다. 안타깝게도, 이 구성 업데이트는 SnowSQL 자동 업그레이드 프로세스를 통해 수행할 수 없습니다.

시스템 관리자와 함께 워스테이션에서 다음 명령을 실행합니다.

$ sudo bash -c "echo '-b snowsql' > /etc/prelink.conf.d/snowsql.conf"

참고

사용자 홈 디렉터리에 snowsql 을 설치하면 prelink 가 기본적으로 공유 바이너리 디렉터리(예: /usr/bin 또는 /bin)를 검색하도록 구성되고 홈 디렉터리의 프로그램을 변경하지 않기 때문에 이러한 문제가 발생할 가능성이 적습니다.

연결 매개 변수 참조

-a , --accountname

설명

필수

계정 식별자 를 지정합니다.

이 연결 매개 변수는 구성 파일 에도 설정할 수 있습니다.

문자열

또한, 이 값은 환경 변수일 수도 있습니다.

Linux/macOS

$SNOWSQL_ACCOUNT

Windows

%SNOWSQL_ACCOUNT%

예를 들어, Linux 또는 macOS에서:

$ export SNOWSQL_ACCOUNT=myorganization-myaccount

$ snowsql -a $SNOWSQL_ACCOUNT
기본값

없음

-u , --username

설명

지정된 계정으로 연결할 사용자의 로그인 이름을 지정합니다.

이 연결 매개 변수는 구성 파일 에도 설정할 수 있습니다.

문자열

이 값은 환경 변수일 수 있습니다.

Linux/macOS

$SNOWSQL_USER

Windows

%SNOWSQL_USER%

예를 들어, Linux 또는 macOS에서:

$ export SNOWSQL_USER=jdoe

$ snowsql -u $SNOWSQL_USER
기본값

없음

-d , --dbname

설명

클라이언트 세션에서 기본적으로 사용할 데이터베이스를 지정합니다(로그인 후 변경 가능).

문자열

이 값은 환경 변수일 수 있습니다.

Linux/macOS

$SNOWSQL_DATABASE

Windows

%SNOWSQL_DATABASE%

이 연결 매개 변수는 구성 파일 에도 설정할 수 있습니다.

기본값

없음

-s , --schemaname

설명

클라이언트 세션에서 기본적으로 사용할 스키마를 지정합니다(로그인 후 변경 가능).

문자열

이 값은 환경 변수일 수 있습니다.

Linux/macOS

$SNOWSQL_SCHEMA

Windows

%SNOWSQL_SCHEMA%

이 연결 매개 변수는 구성 파일 에도 설정할 수 있습니다.

기본값

없음

-r , --rolename

설명

클라이언트 세션에서 Snowflake 오브젝트에 액세스하기 위해 기본적으로 사용할 역할을 지정합니다(로그인 후 변경 가능).

이 연결 매개 변수는 구성 파일 에도 설정할 수 있습니다.

문자열

이 값은 환경 변수일 수 있습니다.

Linux/macOS

$SNOWSQL_ROLE

Windows

%SNOWSQL_ROLE%

기본값

없음

-w , --warehouse

설명

클라이언트 세션에서 쿼리, 로딩 등을 위해 기본적으로 사용할 가상 웨어하우스를 지정합니다(로그인 후 변경 가능).

이 연결 매개 변수는 구성 파일 에도 설정할 수 있습니다.

문자열

이 값은 환경 변수일 수 있습니다.

Linux/macOS

$SNOWSQL_WAREHOUSE

Windows

%SNOWSQL_WAREHOUSE%

기본값

없음

-h , --host사용되지 않음

설명

하위 버전 호환성/내부 용도를 위해 제공됨

Snowflake에서 연결할 호스트의 주소를 지정합니다.

사용자가 지정한 계정 식별자(-a 또는 --account 사용)와 Snowflake 도메인(snowflakecomputing.com)을 연결하여 호스트 주소가 자동으로 결정되기 때문에 이 매개 변수는 더 이상 사용되지 않습니다.

문자열

기본값

없음

-p , --port사용되지 않음

설명

하위 버전 호환성/내부 용도를 위해 제공됨

연결에서 사용할 포트 번호를 지정합니다.

Snowflake의 포트 번호는 항상 443 이므로 이 매개 변수는 더 이상 사용되지 않습니다.

문자열

기본값

없음

--region사용되지 않음

설명

하위 버전 호환성/내부 용도를 위해 제공됨

사용자 계정이 위치한 리전 의 ID를 지정합니다.

이 매개 변수는 더 이상 사용되지 않습니다. 자세한 내용은 이 항목의 -a , --accountname 섹션을 참조하십시오.

N/A

기본값

N/A

-m , --mfa-passcode

설명

명령줄에서 암호를 전달하는 경우 MFA(다단계 인증)에 대한 두 번째 토큰을 지정합니다.

문자열

기본값

없음

--mfa-passcode-in-password

설명

비밀번호의 마지막에 MFA 암호를 추가합니다.

사용자는 비밀번호 프롬프트를 강제로 실행하고 비밀번호 다음에 MFA 암호를 입력할 수 있습니다. 예를 들어, MFA 토큰이 123456 이고 비밀번호가 PASSWORD 인 경우:

$ snowsql ... -P ...

Password: PASSWORD123456

해당 사항 없음(매개 변수가 값을 갖지 않음)

기본값

N/A

--abort-detached-query

설명

클라이언트와 서버 간의 연결이 끊어지면 쿼리를 중단합니다.

부울

기본값

False(즉, 연결이 끊겨도 활성 쿼리가 중단되지 않음)

--probe-connection

설명

Snowflake에 연결 테스트를 수행하고 결과를 보고합니다. 이 옵션은 주로 TLS/SSL 인증서 체인을 인쇄하기 위해 사용되는 실험적인 옵션입니다.

해당 사항 없음(매개 변수가 값을 갖지 않음)

기본값

N/A

--authenticator

설명

사용자 로그인 자격 증명을 확인하기 위해 사용할 인증자를 지정합니다.

문자열(상수):

  • snowflake 에서는 내부 Snowflake 인증자를 사용합니다.

  • externalbrowser 에서는 웹 브라우저 를 사용하여 사용자 계정에 Okta, ADFS 또는 기타 모든 SAML 2.0 규격 ID 공급자(IdP)를 인증합니다.

  • https://<okta_계정_이름>.okta.com (즉, Okta용 URL 엔드포인트) 은 기본 Okta를 통해 인증합니다 (IdP가 Okta인 경우에만 지원됨).

  • oauth 는 OAuth를 사용하여 인증합니다. OAuth가 인증자로 지정되면 --token 매개 변수도 설정하여 OAuth 토큰을 지정해야 합니다(아래 참조).

자세한 내용은 페더레이션 인증 관리하기/사용하기클라이언트, 드라이버 및 커넥터를 사용한 OAuth 섹션을 참조하십시오.

기본값

snowflake

참고

externalbrowser 인증자는 웹 브라우저가 액세스할 수 있는 터미널 창에서만 지원됩니다. 예를 들어, SSH(Secure Shell) 세션을 통해 액세스하는 원격 시스템의 터미널 창에서 웹 브라우저를 열기 위해서는 추가적으로 설정해야 수 있습니다.

웹 브라우저에 액세스할 수 없지만 IdP가 Okta인 경우 기본 Okta를 사용할 수 있습니다(즉, 인증자를 https://<okta_계정_이름>.okta.com 으로 설정).

--token

설명

인증에서 사용할 OAuth 토큰을 지정합니다. 이 매개 변수는 --authenticator=oauth 를 지정하는 경우에만 필수입니다.

문자열

기본값

없음

-v , --version

설명

지정된 SnowSQL 버전을 사용하거나, 버전이 지정되지 않은 경우에는 설치된 최신 SnowSQL 버전을 표시합니다.

문자열

기본값

없음

--versions

설명

설치 및 실행할 수 있는 SnowSQL의 모든 사용 가능 버전을 나열합니다. 목록에서 이전 SnowSQL 버전을 설치하려면 -v 옵션을 사용하여 설치할 버전을 지정합니다.

해당 사항 없음(매개 변수가 값을 갖지 않음)

기본값

N/A

--noup

설명

이 실행에 대한 자동 업그레이드를 비활성화합니다. 이 옵션이 포함되지 않고 새 버전을 사용할 수 있는 경우 SnowSQL이 새 버전을 자동으로 다운로드하여 설치합니다. 다음에 SnowSQL을 실행할 때 새 버전이 사용됩니다.

해당 사항 없음(매개 변수가 값을 갖지 않음)

기본값

N/A

-D , --variable

설명

명령줄에서 SnowSQL 변수를 정의합니다. 이 옵션은 Snowflake에서 사용할 특정 변수를 설정하기 위해 사용할 수 있습니다.

문자열

예:

$ snowsql ... -D tablename=CENUSTRACKONE --variable db_key=$DB_KEY ...
기본값

없음

-o , --option

설명

명령줄에서 SnowSQL 구성 옵션을 정의합니다. 이 옵션은 SnowSQL 구성 파일에 설정된 옵션을 재정의합니다. 설정/재정의할 수 있는 옵션에 대한 설명은 SnowSQL 구성 옵션 참조 를 참조하십시오.

문자열

기본값

없음

-f , --filename

설명

일괄 처리 모드로 실행할 SQL 파일을 지정합니다.

값은 파일 이름(디렉터리 경로 포함, 필요한 경우) 또는 파일에 대한 URL일 수 있습니다.

문자열

기본값

없음

-q , --query

설명

실행할 SQL 쿼리를 지정합니다.

값은 단일 SQL 쿼리 또는 실행할 쿼리의 세미콜론으로 구분된 목록(예: 'select current_user(); select current_role()')일 수 있습니다.

쿼리를 ;> 로 구분하여 비동기적으로 실행할 여러 쿼리를 지정할 수도 있습니다. 다음 예제에서는 SnowSQL을 시작하고 네 개의 쿼리를 모두 비동기적으로 실행합니다.

snowsql -o log_level=DEBUG -q "select * from SNOWSQLTABLE;> insert into table table1 values(2);> select 5;>select count(*) from testtable;"

문자열

기본값

없음

--config

설명

SnowSQL 구성 파일의 위치(예: 디렉터리 경로)를 지정합니다. 기본 위치에서 구성 파일을 이동하거나 복사하려면 이 커넥터 매개 변수를 포함하십시오.

문자열

기본값

OS에 따라 고유함:

Linux/macOS

~/.snowsql/

Windows

%USERPROFILE%\.snowsql\

-P , --prompt

설명

대화형 비밀번호 프롬프트를 강제로 실행합니다.

기본적으로, SnowSQL은 $SNOWSQL_PWD 환경 변수에 저장된 비밀번호를 사용합니다. 이 옵션을 사용하면 $SNOWSQL_PWD에 정의된 비밀번호를 재정의할 수 있습니다.

해당 사항 없음(매개 변수가 값을 갖지 않음)

기본값

N/A

-M, --mfa-prompt

설명

MFA의 두 번째 토큰에 대한 프롬프트를 강제로 실행합니다. 또는, 명령줄 라인에서 전달하려면 --mfa-passcode <문자열> 을 사용하십시오.

해당 사항 없음(매개 변수가 값을 갖지 않음)

기본값

N/A

-c , --connection

설명

사용할 연결을 지정합니다. 여기서 지정된 문자열은 SnowSQL 구성 파일에 정의된 연결의 이름입니다. 자세한 내용은 이 항목의 명명된 연결 사용하기 섹션을 참조하십시오.

문자열

기본값

없음

--single-transaction

설명

이 옵션은 --filename, --query 또는 표준 입력 명령과 결합하여 모든 명령이 성공적으로 완료되거나 변경 사항이 적용되지 않도록 문 주위를 BEGIN/COMMIT로 감쌉니다.

해당 사항 없음(매개 변수가 값을 갖지 않음)

기본값

N/A

참고

입력 명령에서 BEGIN, COMMIT, ROLLBACK을 사용하는 경우에는 이 옵션이 올바르게 작동하지 않음에 유의하십시오. 또한, 트랜잭션 블록 내에서 명령을 실행할 수 없는 경우 이 옵션을 사용하면 명령이 실패하게 됩니다.

--private-key-path

설명

개인 키 파일의 경로입니다.

조심

암호화되지 않은 개인 키가 지원되지만, Snowflake에 연결할 때는 반드시 암호화된 개인 키를 사용하는 것이 좋습니다.

자세한 내용은 키 페어 인증 및 키 페어 순환 사용하기 를 참조하십시오.

이 연결 매개 변수는 구성 파일 에도 설정할 수 있습니다.

문자열

기본값

없음

--disable-request-pooling

설명

기본적으로, snowsql에서는 연결 풀링을 사용합니다. 연결 풀링을 사용하면 일반적으로 연결을 생성하기 위해 소요되는 시간이 감소합니다. 그러나 DNS 문제가 발생하면 클라이언트가 대체 DNS로 장애 조치를 수행하는 속도가 느려질 수 있습니다. 이 매개 변수를 사용하면 연결 풀링을 끌 수 있습니다.

이 매개 변수는 복제가 활성화된 고객에게만 적용됩니다.

해당 사항 없음(매개 변수가 값을 갖지 않음)

기본값

N/A

-U , --upgrade

설명

SnowSQL이 로컬 디렉터리에 다운로드되지 않은 경우 최신 버전으로 강제로 업그레이드합니다.

해당 사항 없음(매개 변수가 값을 갖지 않음)

기본값

N/A

참고

SnowSQL 1.1.63 또는 최신 버전의 부트스트랩 실행 파일이 필요합니다. UI에서 다운로드할 수 있습니다.

-K , --client-session-keep-alive

설명

사용자의 활동이 없는 경우에도 세션을 무기한 활성 상태로 유지합니다.

해당 사항 없음(매개 변수가 값을 갖지 않음)

기본값

N/A

참고

내부적으로 CLIENT_SESSION_KEEP_ALIVE 매개 변수는 세션에 대해 true로 설정됩니다.

-? , --help

설명

명령줄 빠른 사용 가이드를 표시합니다.

해당 사항 없음(매개 변수가 값을 갖지 않음)

기본값

N/A

맨 위로 이동