Verbinden mit einem Cluster mit Amazon-Redshift-RSQL - Amazon Redshift

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verbinden mit einem Cluster mit Amazon-Redshift-RSQL

Verbinden ohne DSN

  1. Wählen Sie in der Amazon-Redshift-Konsole den Cluster aus, mit dem Sie eine Verbindung herstellen möchten, und notieren Sie sich den Endpunkt, die Datenbank und den Port.

  2. Geben Sie in der Eingabeaufforderung die Verbindungsinformationen an, indem Sie entweder Befehlszeilenparameter verwenden.

    rsql -h <endpoint> -U <username> -d <databasename> -p <port>

    Hier gilt Folgendes:

    • <endpoint> ist der Endpoint (Endpunkt), den Sie im vorherigen Schritt notiert haben.

    • <username> ist der Name eines Benutzers mit Berechtigungen für die Verbindung mit dem Cluster.

    • <databasename> ist der Database Name (Datenbankname), den Sie im vorherigen Schritt notiert haben.

    • <port> ist der Port, den Sie im vorherigen Schritt notiert haben. <port> ist ein optionaler Parameter.

    Ein Beispiel folgt.

    rsql -h testcluster.example.amazonaws.com -U user1 -d dev -p 5439
  3. Wenn Sie aufgefordert werden, das Passwort einzugeben, geben Sie das Passwort für den Benutzer <username> ein.

    Ein erfolgreiches Ergebnis sieht wie folgt aus.

    % rsql -h testcluster.example.com -d dev -U user1 -p 5349 Password for user user1: DSN-less Connected DBMS Name: Amazon Redshift Driver Name: Amazon Redshift ODBC Driver Driver Version: 1.4.27.1000 Rsql Version: 1.0.1 Redshift Version: 1.0.29306 Type "help" for help. (testcluster) user1@dev=#

Der Befehl zum Verbinden hat dieselben Parameter unter Linux, Mac OS und Windows.

Verbinden mit einem DSN

Sie können RSQL über einen Datenquellennamen (DSN) mit Amazon Redshift verbinden, um die Organisation von Verbindungseigenschaften zu vereinfachen. Weitere Informationen finden Sie unter Konfigurieren von Verbindungsfunktionen. Dieses Thema enthält Anweisungen zur ODBC-Treiberinstallation und Beschreibungen für DSN-Eigenschaften. Der folgende Abschnitt Installation und Konfiguration des ODBC-Treibers von Amazon Redshift unter Microsoft Windows zeigt beispielsweise, wie Sie mithilfe von Windows eine Verbindung mit einem DSN herstellen.

Verwenden einer DSN-Verbindung mit einem Passwort

Im Folgenden wird ein Beispiel für eine DSN-Verbindungskonfiguration gezeigt, die ein Passwort verwendet. Der Standard-<path to driver> ist /opt/amazon/redshift/lib/libamazonredshiftodbc.dylib für Mac OSX und /opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so für Linux.

[testuser] Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so SSLMode=verify-ca Min_TLS=1.2 boolsaschar=0 Host=<server endpoint> Port=<database port> Database=<dbname> UID=<username> PWD=<password> sslmode=prefer

Die folgende Ausgabe erfolgt bei einer erfolgreichen Verbindung.

% rsql -D testuser DSN Connected DBMS Name: Amazon Redshift Driver Name: Amazon Redshift ODBC Driver Driver Version: 1.4.27.1000 Rsql Version: 1.0.1 Redshift Version: 1.0.29306 Type "help" for help. (testcluster) user1@dev=#

Verwenden von Single-Sign-on-DSN

Sie können einen DSN für die Single-Sign-On-Authentifizierung konfigurieren. Im Folgenden wird ein Beispiel für eine DSN-Verbindungskonfiguration gezeigt, die den Okta Single Sign-On verwendet.

[testokta] Driver=<path to driver> SSLMode=verify-ca Min_TLS=1.2 boolsaschar=0 Host=<server endpoint> clusterid=<cluster id> region=<region name> Database=<dbname> locale=en-US iam=1 plugin_name=<plugin name> uid=<okta username> pwd=<okta password> idp_host=<idp endpoint> app_id=<app id> app_name=<app name> preferred_role=<role arn>

Beispielausgabe einer erfolgreichen Verbindung.

% rsql -D testokta DSN Connected DBMS Name: Amazon Redshift Driver Name: Amazon Redshift ODBC Driver Driver Version: 1.4.27.1000 Rsql Version: 1.0.1 Redshift Version: 1.0.29306 Type "help" for help. (testcluster) user1@dev=#

Im Folgenden wird ein Beispiel für eine DSN-Verbindungskonfiguration gezeigt, die den Azure Single Sign-On verwendet.

[testazure] Driver=<path to driver> SSLMode=verify-ca Min_TLS=1.2 boolsaschar=0 Host=<server endpoint> Port=<cluster port> clusterid=<cluster id> region=<region name> Database=<dbname> locale=en-us iam=1 plugin_name=<plugin name> uid=<azure username> pwd=<azure password> idp_tenant=<Azure idp tenant uuid> client_id=<Azure idp client uuid> client_secret=<Azure idp client secret>

Verwenden einer DSN-Verbindung mit einem IAM-Profil

Sie können sich über Ihr konfiguriertes IAM-Profil mit Amazon Redshift verbinden. Das IAM-Profil muss über Berechtigungen zum Aufrufen von GetClusterCredentials verfügen. Das folgende Beispiel zeigt die zu verwendenden DSN-Eigenschaften. Die Parameter ClusterID und Region sind nur erforderlich, wenn Host kein von Amazon bereitgestellter Endpunkt wie examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com ist.

[testiam] Driver=Default Host=testcluster.example.com Database=dev DbUser=testuser ClusterID=rsqltestcluster Region=us-east-1 IAM=1 Profile=default

Der Wert für den Profile Schlüssel ist das benannte Profil, das Sie aus Ihren AWS CLI-Anmeldeinformationen auswählen. Dieses Beispiel zeigt die Anmeldeinformationen für das Profil default.

$ cat .aws/credentials [default] aws_access_key_id = ASIAIOSFODNN7EXAMPLE aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

Nachfolgend ist die Beispielantwort dargestellt.

$ rsql -D testiam DSN Connected DBMS Name: Amazon Redshift Driver Name: Amazon Redshift ODBC Driver Driver Version: 1.4.27.1000 Rsql Version: 1.0.1 Redshift Version: 1.0.29306 Type "help" for help. (testcluster) testuser@dev=>

Verwenden einer DSN-Verbindung mit einem Instance-Profil

Sie können über Ihr Amazon-EC2-Instance-Profil eine Verbindung zu Amazon Redshift herstellen. Das Instance-Profil muss über Berechtigungen zum Aufrufen von GetClusterCredentials verfügen. Im folgenden Beispiel finden Sie die zu verwendenden DSN-Eigenschaften. Die Parameter ClusterID und Region sind nur erforderlich, wenn Host kein von Amazon bereitgestellter Endpunkt wie examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com ist.

[testinstanceprofile] Driver=Default Host=testcluster.example.com Database=dev DbUser=testuser ClusterID=rsqltestcluster Region=us-east-1 IAM=1 Instanceprofile=1

Nachfolgend ist die Beispielantwort dargestellt.

$ rsql -D testinstanceprofile DSN Connected DBMS Name: Amazon Redshift Driver Name: Amazon Redshift ODBC Driver Driver Version: 1.4.27.1000 Rsql Version: 1.0.1 Redshift Version: 1.0.29306 Type "help" for help. (testcluster) testuser@dev=>

Verwenden einer DSN-Verbindung mit der standardmäßigen Anbieterkette von Anmeldeinformationen

Um eine Verbindung über die standardmäßige Anbieterkette für Anmeldeinformationen herzustellen, geben Sie nur die IAM-Eigenschaft an. Amazon Redshift RSQL versucht dann, Anmeldeinformationen in der unter Arbeiten mit AWS Anmeldeinformationen im SDK for Java beschriebenen Reihenfolge abzurufen. AWS Mindestens einer der Anbieter in der Kette muss die Berechtigung GetClusterCredentials besitzen. Dies ist beispielsweise nützlich, um eine Verbindung über ECS-Container herzustellen.

[iamcredentials] Driver=Default Host=testcluster.example.com Database=dev DbUser=testuser ClusterID=rsqltestcluster Region=us-east-1 IAM=1