Amazon Redshift ne prendra plus en charge la création de nouvelles fonctions Python définies par l’utilisateur à compter du 1er novembre 2025. Si vous souhaitez utiliser des fonctions Python définies par l’utilisateur, créez-les avant cette date. Les fonctions Python définies par l’utilisateur existantes continueront de fonctionner normalement. Pour plus d’informations, consultez le billet de blog
Connexion à un cluster avec Amazon Redshift RSQL
Avec Amazon Redshift, vous pouvez vous connecter à un cluster et interagir avec eux à l’aide de RSQL. Il s’agit d’un outil de ligne de commande qui fournit un moyen sécurisé d’interroger des données, de créer des objets de base de données et de gérer votre cluster Amazon Redshift. Les sections suivantes vous indiquent les étapes à suivre pour établir une connexion à votre cluster à l’aide de RSQL avec ou sans nom de source de données (DSN).
Connexion sans DSN
-
Sur la console Amazon Redshift, choisissez le cluster auquel vous souhaitez vous connecter et notez le point de terminaison, la base de données et le port.
-
A l’invite de commande, spécifiez les informations de connexion à l’aide des paramètres de ligne de commande.
rsql -h<endpoint>-U<username>-d<databasename>-p<port>Ici, les éléments suivants s’appliquent :
-
<endpoint>est le Point de terminaison que vous avez enregistré à l’étape précédente. -
<username>est le nom d’un utilisateur disposant des autorisations permettant de se connecter au cluster. -
<databasename>est le Nom de base de données que vous avez enregistré à l’étape précédente. -
<port>est le port que vous avez enregistré à l’étape précédente.<port>est un paramètre facultatif.
Un exemple suit.
rsql -h testcluster.example.amazonaws.com -U user1 -d dev -p 5439 -
-
À l’invite du mot de passe psql, saisissez le mot de passe de l’utilisateur
<username>.Une réponse de connexion réussie ressemble à ce qui suit.
% 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=#
La commande de connexion possède les mêmes paramètres sous Linux, Mac OS et Windows.
Connexion avec un DSN
Vous pouvez connecter RSQL à Amazon Redshift à l’aide d’un DSN pour simplifier l’organisation des propriétés de connexion DSN. Cette rubrique contient des instructions pour l’installation du pilote ODBC et des descriptions des propriétés DSN.
Utilisation d’une connexion DSN avec un mot de passe
L’exemple suivant montre une configuration de connexion DSN utilisant un mot de passe. La valeur par défaut <path to driver> pour Mac OS X est /opt/amazon/redshift/lib/libamazonredshiftodbc.dylib et pour Linux, il s’agit de /opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so.
[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
La sortie suivante résulte d’une connexion réussie.
% 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=#
Utilisation du DSN à authentification unique
Vous pouvez configurer un DSN pour l’authentification unique. L’exemple suivant montre une configuration de connexion DSN utilisant l’authentification unique Okta.
[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>
Exemple de sortie d’une connexion réussie.
% 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=#
L’exemple suivant montre une configuration de connexion DSN utilisant l’authentification unique Azure.
[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>
Utilisation d’une connexion DSN avec un profil IAM
Vous pouvez vous connecter à Amazon Redshift à l’aide de votre profil IAM configuré. Le profil IAM doit être autorisé à appeler GetClusterCredentials. L’exemple suivant illustre les propriétés DSN à utiliser. Les paramètres ClusterID et Region ne sont obligatoires que si l’Host n’est pas un point de terminaison fourni par Amazon comme examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com.
[testiam] Driver=Default Host=testcluster.example.com Database=dev DbUser=testuser ClusterID=rsqltestcluster Region=us-east-1 IAM=1 Profile=default
La valeur de la clé Profile est le profil nommé que vous choisissez parmi vos informations d’identification de CLI AWS. Cet exemple montre les informations d’identification du profil nommé default.
$ cat .aws/credentials [default] aws_access_key_id = ASIAIOSFODNN7EXAMPLE aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
L’exemple de réponse de connexion est le suivant.
$ 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=>
Utilisation d’une connexion DSN avec un profil d’instance
Vous pouvez vous connecter à Amazon Redshift à l’aide de votre profil d’instance Amazon EC2. Le profil d’instance doit être autorisé à appeler GetClusterCredentials. Voir l’exemple ci-dessous pour connaître les propriétés DSN à utiliser. Les paramètres ClusterID et Region ne sont obligatoires que si l’Host n’est pas un point de terminaison fourni par Amazon comme examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com.
[testinstanceprofile] Driver=Default Host=testcluster.example.com Database=dev DbUser=testuser ClusterID=rsqltestcluster Region=us-east-1 IAM=1 Instanceprofile=1
L’exemple de réponse de connexion est le suivant.
$ 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=>
Utilisation d’une connexion DSN avec la chaîne de fournisseurs d’informations d’identification par défaut
Pour vous connecter à l’aide de la chaîne de fournisseurs d’informations d’identification par défaut, spécifiez uniquement la propriété IAM ; Amazon Redshift RSQL tentera d’acquérir les informations d’identification selon l’ordre décrit dans Utilisation des informations d’identification AWSdans le kit AWS SDK pour Java. Au moins un des fournisseurs de la chaîne doit disposer de l’autorisation GetClusterCredentials. Cela est utile pour se connecter à partir de conteneurs ECS, par exemple.
[iamcredentials] Driver=Default Host=testcluster.example.com Database=dev DbUser=testuser ClusterID=rsqltestcluster Region=us-east-1 IAM=1