

 Amazon Redshift non supporterà più la creazione di nuovi Python UDFs a partire dalla Patch 198. Python esistente UDFs continuerà a funzionare fino al 30 giugno 2026. Per ulteriori informazioni, consulta il [post del blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Connettiti a un cluster con Amazon Redshift RSQL
<a name="rsql-query-tool-starting-tool-connection"></a>

Con Amazon Redshift puoi connetterti a un cluster e interagirvi con RSQL. Si tratta di uno strumento da riga di comando che fornisce un modo sicuro per eseguire query sui dati, creare oggetti di database e gestire il cluster Amazon Redshift. Le seguenti sezioni illustrano i passaggi per stabilire una connessione al cluster utilizzando RSQL con e senza un nome origine dati (DSN).

## Connessione senza DSN
<a name="rsql-query-tool-starting-tool-connection-dsn-less-example"></a>

1. Sulla console Amazon Redshift, scegli il cluster a cui vuoi connetterti e annota l'endpoint, il database e la porta.

1. Al prompt dei comandi, specificate le informazioni di connessione usando i parametri della linea di comando.

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

    Qui si applicano le seguenti condizioni: 
   +  *<endpoint>*è l'**endpoint** registrato nel passaggio precedente.
   +  *<username>*è il nome di un utente con i permessi per connettersi al cluster.
   +  *<databasename>*è il **nome del database** registrato nel passaggio precedente.
   +  *<port>*è la **porta** registrata nel passaggio precedente. *<port>*è un parametro opzionale.

   Di seguito è riportato un esempio.

   ```
   rsql -h testcluster.example.amazonaws.com -U user1 -d dev -p 5439
   ```

1.  Alla richiesta della password, immettere la password per l'*<username>*utente.

   Una risposta di connessione riuscita appare come la seguente.

   ```
   % 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=#
   ```

Il comando per connettersi ha gli stessi parametri su Linux, Mac OS e Windows.

## Connessione senza DSN
<a name="rsql-query-tool-starting-tool-connection-dsn-example"></a>

Puoi connettere RSQL ad Amazon Redshift utilizzando un DSN per semplificare l’organizzazione delle proprietà di connessione. In questo argomento sono incluse le istruzioni per l’installazione del driver ODBC e le descrizioni delle proprietà DSN.

### Utilizzo di una connessione DSN con una password
<a name="rsql-query-tool-starting-tool-connection-dsn-example-password"></a>

Di seguito viene illustrato un esempio di configurazione di connessione DSN che utilizza una password. Il `<path to driver>` predefinito per Mac OSX è `/opt/amazon/redshift/lib/libamazonredshiftodbc.dylib` e per Linux è `/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
```

L'output seguente deriva da una connessione riuscita.

```
% 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=#
```

### Utilizzo di DSN Single Sign-On
<a name="rsql-query-tool-starting-tool-connection-dsn"></a>

È possibile configurare un DSN per l'autenticazione Single Sign-On. Di seguito viene illustrato un esempio di configurazione di connessione DSN che utilizza il servizio SSO di 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>
```

Esempio di output da una connessione riuscita.

```
% 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=#
```

Di seguito viene illustrato un esempio di configurazione di connessione DSN che utilizza Azure Single Sign-On.

```
[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>
```

### Utilizzo di una connessione DSN con un profilo IAM
<a name="rsql-query-tool-starting-tool-connection-dsn-iam"></a>

Puoi connetterti ad Amazon Redshift utilizzando il profilo IAM configurato. Il profilo IAM deve avere privilegi per chiamare `GetClusterCredentials`. L'esempio seguente mostra le proprietà DSN da utilizzare. I parametri `ClusterID` e `Region` sono obbligatori solo se il `Host` non è un endpoint fornito da Amazon come `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
```

Il valore della `Profile` chiave è il profilo denominato che scegli tra le tue credenziali AWS CLI. In questo esempio vengono mostrate le credenziali per il profilo nominato `default`.

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

Di seguito è illustrata la risposta della connessione.

```
$ 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=>
```

### Utilizzo di una connessione DSN con un profilo dell'istanza
<a name="rsql-query-tool-starting-tool-connection-dsn-instance"></a>

Puoi connetterti ad Amazon Redshift utilizzando il profilo dell'istanza Amazon EC2. Il profilo dell'istanza deve avere privilegi per chiamare `GetClusterCredentials`. Vedere l'esempio riportato di seguito per le proprietà DSN da utilizzare. I parametri `ClusterID` e `Region` sono obbligatori solo se il `Host` non è un endpoint fornito da Amazon come `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
```

Di seguito è illustrata la risposta della connessione.

```
$ 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=>
```

### Utilizzo di una connessione DSN con la catena di provider delle credenziali di default
<a name="rsql-query-tool-starting-tool-connection-dsn-provider-chain"></a>

Per connetterti utilizzando la catena di provider di credenziali predefinita, specifica solo la proprietà IAM e Amazon Redshift RSQL tenterà di acquisire le credenziali nell'ordine descritto in [Working AWS with Credentials in](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html) the SDK for Java. AWS Almeno uno dei fornitori della catena deve disporre di autorizzazioni `GetClusterCredentials`. Ciò è utile per il collegamento da container ECS, ad esempio.

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