Connessione a un cluster database Amazon Aurora - Amazon Aurora

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à.

Connessione a un cluster database Amazon Aurora

Puoi eseguire la connessione a un cluster di database Aurora utilizzando gli stessi strumenti che utilizzi per connetterti a un database MySQL o PostgreSQL. Devi specificare una stringa di connessione con qualsiasi script, utility o applicazione che si connette a un'istanza di database MySQL o PostgreSQL. Utilizzi la stessa chiave pubblica per le connessioni Secure Sockets Layer (SSL).

Nella stringa di connessione, in genere utilizzerai le informazioni sulla porta e sull'host dall’endpoint speciali associate al cluster di database. Con questi endpoint, puoi utilizzare gli stessi parametri di connessione indipendentemente dal numero di istanze di database presenti nel cluster. Per attività specializzate come la risoluzione dei problemi, puoi anche utilizzare le informazioni sull'host e sulla porta da un'istanza database specifica nel tuo cluster di database di Aurora.

Nota

Per i cluster di database di Aurora Serverless, puoi connetterti all'endpoint del database anziché all'istanza database. Puoi trovare l'endpoint di database per un cluster di database Aurora Serverless nella scheda Connectivity & security (Connettività e sicurezza) della AWS Management Console. Per ulteriori informazioni, consulta Usare Amazon Aurora Serverless v1.

Indipendentemente dal motore di database Aurora e dagli strumenti specifici che utilizzi con il cluster o l'istanza database, l'endpoint deve essere accessibile. Un cluster Aurora DB può essere creato solo in un cloud privato virtuale (VPC) basato sul servizio Amazon VPC. Ciò significa accedi all'endpoint dall'interno o dall'esterno del VPC utilizzando uno dei seguenti approcci.

  • Accedi al cluster Aurora DB all'interno del VPC: abilita l'accesso al cluster Aurora DB tramite il VPC. A tale scopo, modifica le regole in entrata nel gruppo di sicurezza per il VPC in modo da consentire l'accesso al cluster di database Aurora specifico. Per ulteriori informazioni, incluso come configurare il VPC per diversi scenari di cluster Aurora DB, consulta Amazon Virtual Private Cloud e Amazon Aurora. VPCs

  • Accedi al cluster Aurora DB all'esterno del VPC: per accedere a un cluster Aurora DB dall'esterno del VPC, utilizza l'indirizzo endpoint pubblico del cluster DB.

Per ulteriori informazioni, consulta Risoluzione dei problemi di connessione in Aurora.

Connessione ai cluster Aurora DB con i driver AWS

La AWS suite di driver è stata progettata per fornire supporto per tempi di switchover e failover più rapidi e l'autenticazione con AWS Secrets Manager, AWS Identity and Access Management (IAM) e Federated Identity. I AWS driver si basano sul monitoraggio dello stato del cluster DB e sulla conoscenza della topologia del cluster per determinare il nuovo writer. Questo approccio riduce i tempi di switchover e failover a secondi a una cifra, rispetto alle decine di secondi dei driver open source.

La tabella seguente elenca le funzionalità supportate per ciascuno dei driver. Con l'introduzione di nuove funzionalità di servizio, l'obiettivo della AWS suite di driver è disporre di un supporto integrato per tali funzionalità di servizio.

Funzionalità AWS Driver JDBC AWS Driver Python AWS Driver ODBC per MySQL AWS Wrapper NodeJS avanzato
Supporto per il failover
Monitoraggio avanzato del failover
Suddivisione in lettura/scrittura No
Localizzatore di connessione Aurora No
Connessione ai metadati del driver N/D N/D N/D
Telemetria No
Secrets Manager
Autenticazione IAM
Identità federata (ADFS) No
Identità federata (Okta)
Database Aurora PostgreSQL Limitless (solo Aurora PostgreSQL) No No (solo Aurora PostgreSQL)

Per ulteriori informazioni sui AWS driver, consulta il driver di lingua corrispondente per il cluster Aurora MySQL o Aurora PostgreSQL DB.

Connessione a un cluster di database Amazon Aurora MySQL

Per autenticarsi sul cluster Aurora MySQL DB, è possibile utilizzare l'autenticazione con nome utente e password MySQL o l'autenticazione del database (IAM). AWS Identity and Access Management Per ulteriori informazioni sull'utilizzo dell'autenticazione tramite nome utente e password MySQL, consulta la pagina relativa a Access Control and Account Management nella documentazione di MySQL. Per ulteriori informazioni sull'utilizzo dell'autenticazione database IAM, consulta Autenticazione del database IAM .

Dopo la connessione a un cluster di database Amazon Aurora con compatibilità MySQL 8.0, puoi eseguire comandi SQL compatibili con MySQL versione 8.0. La versione minima compatibile è MySQL 8.0.23. Per ulteriori informazioni sulla sintassi SQL di MySQL 8.0, consulta il manuale di riferimento di MySQL 8.0. Per informazioni sui limiti relativi a Aurora MySQL 3, consulta Confronto tra Aurora MySQL versione 3 e MySQL 8.0 Community Edition.

Dopo la connessione a un cluster di database Amazon Aurora con compatibilità MySQL 5.7, puoi eseguire comandi SQL compatibili con MySQL versione 5.7. Per ulteriori informazioni sulla sintassi SQL di MySQL 5.7, consulta il manuale di riferimento di MySQL 5.7. Per informazioni sui limiti relativi a Aurora MySQL 5.7, consulta Aurora My SQL versione 2 compatibile con My 5.7 SQL.

Nota

Per una guida dettagliata e utile sulla connessione a un cluster di database Amazon Aurora MySQL, consulta il manuale relativo alla gestione delle connessioni di Aurora.

Nella vista dettagliata del cluster di database, puoi trovare l'endpoint del cluster, utilizzabile nella stringa di connessione MySQL. L'endpoint è costituito da una porta e da un nome di dominio per il cluster di database. Ad esempio, se il valore di un endpoint è mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com:3306, specifica i valori seguenti in una stringa di connessione MySQL:

  • Per l'host o il nome host, specifica mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com

  • Per la porta, specifica 3306 o il valore di porta utilizzato alla creazione del cluster di database.

L'endpoint del cluster consente la connessione all'istanza principale del cluster di database. Puoi eseguire operazioni di lettura e scrittura utilizzando l'endpoint del cluster. Il cluster di database può anche avere fino a 15 repliche di Aurora che supportano l'accesso in sola lettura ai dati nel cluster di database. L'istanza principale e ogni replica Aurora hanno un endpoint univoco che è indipendente dall'endpoint del cluster e che ti consente di eseguire la connessione direttamente a una specifica istanza database nel cluster. L'endpoint del cluster punta sempre all'istanza principale. Se l'istanza principale non riesce e viene sostituita, l'endpoint del cluster punta alla nuova istanza principale.

Per visualizzare l'endpoint del cluster (endpoint di scrittura), scegli Databases (Database) nella console Amazon RDS, quindi scegli il nome del cluster di database per visualizzare i dettagli corrispondenti.

Pannello dei dettagli dell'endpoint di Aurora MySQL Writer che mostra l'indirizzo di connessione per la connettività del database.

Utilità di connessione per Aurora MySQL

Alcune delle utilità di connessione che puoi utilizzare sono elencate di seguito:

Connessione ad Aurora MySQL con l'utilità MySQL

Attenersi alla seguente procedura: Presuppone che il cluster database sia stato configurato in una sottorete privata nel VPC. Ti connetti utilizzando un' EC2 istanza Amazon configurata in base ai tutorial in. Tutorial: creazione di un server Web e un cluster database Amazon Aurora

Nota

Questa procedura non richiede l'installazione del server web nel tutorial, ma richiede l'installazione di MariaDB 10.5.

Eseguire la connessione a un cluster database con l'utilità MySQL
  1. Accedi all' EC2 istanza che stai utilizzando per connetterti al tuo cluster DB.

    Verrà visualizzato un output simile al seguente.

    Last login: Thu Jun 23 13:32:52 2022 from xxx.xxx.xxx.xxx __| __|_ ) _| ( / Amazon Linux 2 AMI ___|\___|___| https://aws.amazon.com/amazon-linux-2/ [ec2-user@ip-10-0-xxx.xxx ~]$
  2. Digita il comando seguente al prompt dei comandi per eseguire la connessione all'istanza database principale di un cluster database.

    Per il parametro -h, sostituisci il nome DNS dell'endpoint per l'istanza principale. Per il parametro -u, sostituisci l'ID utente di un account utente di database.

    mysql -h primary-instance-endpoint.AWS_account.AWS_Region.rds.amazonaws.com -P 3306 -u database_user -p

    Ad esempio:

    mysql -h my-aurora-cluster-instance.c1xy5example.123456789012.eu-central-1.rds.amazonaws.com -P 3306 -u admin -p
  3. Immetti la password per l'utente del database.

    Verrà visualizzato un output simile al seguente.

    Welcome to the MariaDB monitor. Commands end with ; or \g. Your MySQL connection id is 1770 Server version: 8.0.23 Source distribution Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MySQL [(none)]>
  4. Immetti i comandi SQL.

Connessione ad Aurora MySQL con il driver JDBC Amazon Web Services ()AWS

Il driver JDBC di Amazon Web Services (AWS) è progettato come wrapper JDBC avanzato. Questo wrapper è complementare ed estende la funzionalità di un driver JDBC esistente per aiutare le applicazioni a sfruttare le funzionalità dei database cluster come Aurora MySQL. Il driver è compatibile direttamente con il driver MySQL della community. Connector/J driver and the community MariaDB Connector/J

Per installare il driver AWS JDBC, aggiungi il file.jar del driver AWS JDBC (che si trova nell'applicazioneCLASSPATH) e mantieni i riferimenti al rispettivo driver della community. Aggiorna il rispettivo prefisso dell'URL di connessione come segue:

  • jdbc:mysql:// Da a jdbc:aws-wrapper:mysql://

  • jdbc:mariadb:// Da a jdbc:aws-wrapper:mariadb://

Per ulteriori informazioni sul driver AWS JDBC e istruzioni complete per il suo utilizzo, consulta l'archivio dei driver JDBC di Amazon Web Services (AWS). GitHub

Nota

La versione 3.0.3 dell'utilità MariaDB Connector/J interrompe il supporto per i cluster Aurora DB, quindi consigliamo vivamente di passare al driver JDBC. AWS

Connessione ad Aurora MySQL con il driver Python di Amazon Web Services ()AWS

Il driver Python di Amazon Web Services (AWS) è progettato come wrapper Python avanzato. Questo wrapper è complementare ed estende le funzionalità del driver open source Psycopg. Il AWS Python Driver supporta le versioni Python 3.8 e successive. È possibile installare il aws-advanced-python-wrapper pacchetto utilizzando il pip comando, insieme ai pacchetti open source. psycopg

Per ulteriori informazioni sul driver AWS Python e istruzioni complete per il suo utilizzo, consulta il repository Amazon Web Services ()AWS Python Driver. GitHub

Connessione ad Aurora MySQL con il driver ODBC di Amazon Web Services () per MySQL AWS

Il driver AWS ODBC per MySQL è un driver client progettato per l'elevata disponibilità di Aurora MySQL. Il driver può esistere insieme al driver MySQL Connector/ODBC ed è compatibile con gli stessi flussi di lavoro.

Per ulteriori informazioni sul driver AWS ODBC per MySQL e istruzioni complete per installarlo e utilizzarlo, consulta l'archivio Amazon Web Services AWS() ODBC Driver for MySQL. GitHub

Connessione ad Aurora MySQL con Amazon Web Services () Advanced NodeJS Wrapper AWS

L' AWS Advanced NodeJS Wrapper è complementare ed estende la funzionalità di un driver NodeJS esistente. Aiuta le applicazioni a sfruttare le funzionalità dei database cluster come Aurora MySQL.

Per ulteriori informazioni su AWS Advanced NodeJS Wrapper e istruzioni complete per il suo utilizzo, consulta il repository Amazon Web Services (AWS) Advanced NodeJS Wrapper. GitHub

Connessione ad Aurora MySQL tramite SSL

Puoi utilizzare la crittografia SSL sulle connessioni a un'istanza database Aurora MySQL. Per informazioni, consulta Connessioni TLS ai cluster Aurora MySQL DB.

Per eseguire una connessione mediante SSL, utilizza l'utilità MySQL come descritto nella procedura successiva. Se utilizzi l'autenticazione database IAM, devi utilizzare una connessione SSL. Per informazioni, consulta Autenticazione del database IAM .

Nota

Per eseguire la connessione all'endpoint del cluster mediante SSL, l'utilità di connessione client deve supportare Subject Alternative Names (SAN). Se l'utilità di connessione client non supporta SAN, puoi eseguire la connessione direttamente alle istanze nel cluster di database Aurora. Per ulteriori informazioni sugli endpoint Aurora, consulta Connessioni endpoint Amazon Aurora.

Per eseguire la connessione a un cluster di database con SSL utilizzando l'utilità MySQL

  1. Scaricare la chiave pubblica per il certificato di firma Amazon RDS.

    Per ulteriori informazioni sul download dei certificati, consultare Utilizzo SSL/TLS per crittografare una connessione a un'.

  2. Digitare il comando seguente a un prompt dei comandi per eseguire la connessione all'istanza principale di un cluster di database con SSL mediante l'utilità MySQL. Per il parametro -h, sostituisci il nome DNS dell'endpoint per l'istanza principale. Per il parametro -u, sostituisci l'ID utente di un account utente di database. Per il parametro --ssl-ca, sostituire il nome file del certificato SSL come appropriato. Digitare la password dell'utente master, quando richiesto.

    mysql -h mycluster-primary.123456789012.us-east-1.rds.amazonaws.com -u admin_user -p --ssl-ca=[full path]global-bundle.pem --ssl-verify-server-cert

Verrà visualizzato un output simile al seguente.

Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 350 Server version: 8.0.26-log MySQL Community Server (GPL) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>

Per istruzioni generali sulla costruzione delle stringhe di connessione di RDS for MySQL e sulla ricerca della chiave pubblica per le connessioni SSL, consulta Connessione a un'istanza database che esegue il motore di database di MySQL.

Connessione a un cluster di database Amazon Aurora PostgreSQL

Puoi eseguire la connessione a un'istanza database nel cluster di database Amazon Aurora PostgreSQL utilizzando gli stessi strumenti che utilizzi per connetterti a un database PostgreSQL. A questo proposito, utilizzi la stessa chiave pubblica per le connessioni Secure Sockets Layer (SSL). Puoi utilizzare le informazioni relative a endpoint e porta dell'istanza principale o le repliche Aurora del cluster di database PostgreSQL di Aurora nella stringa di connessione di qualsiasi script, utilità o applicazione che si connette a un'istanza database PostgreSQL. Nella stringa di connessione, specifica l'indirizzo DNS dell'endpoint dell'istanza principale o della replica Aurora come parametro host. Specifica il numero di porta dell'endpoint come parametro della porta.

Dopo la connessione a un'istanza database nel cluster di database Amazon Aurora PostgreSQL, puoi eseguire qualsiasi comando SQL compatibile con PostgreSQL.

Nella visualizzazione dettagliata del cluster di database Aurora PostgreSQL, puoi trovare il nome lo status, il tipo e il numero di porta dell'endpoint del cluster. Puoi utilizzare il numero di endpoint e di porta nella stringa di connessione PostgreSQL. Ad esempio, se il valore di un endpoint è mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com, specifica i valori seguenti in una stringa di connessione PostgreSQL:

  • Per l'host o il nome host, specifica mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com

  • Per la porta, specifica 5432 o il valore di porta utilizzato alla creazione del cluster di database.

L'endpoint del cluster consente la connessione all'istanza principale del cluster di database. Puoi eseguire operazioni di lettura e scrittura utilizzando l'endpoint del cluster. Il cluster di database può anche avere fino a 15 repliche di Aurora che supportano l'accesso in sola lettura ai dati nel cluster di database. Ogni istanza database nel cluster Aurora, ovvero l'istanza principale e ogni replica Aurora, ha un endpoint univoco che è indipendente dall'endpoint del cluster. e che ti consente di eseguire la connessione direttamente a una specifica istanza database nel cluster. L'endpoint del cluster punta sempre all'istanza principale. Se l'istanza principale non riesce e viene sostituita, l'endpoint del cluster punta alla nuova istanza principale.

Per visualizzare l'endpoint del cluster (endpoint di scrittura), scegli Databases (Database) nella console Amazon RDS, quindi scegli il nome del cluster di database per visualizzare i dettagli corrispondenti.

Endpoint di scrittura Aurora PostgreSQL.

Utilità di connessione per Aurora PostgreSQL

Alcune delle utilità di connessione che puoi utilizzare sono elencate di seguito:

Connessione ad Aurora PostgreSQL con il driver JDBC Amazon Web Services ()AWS

Il driver JDBC di Amazon Web Services (AWS) è progettato come wrapper JDBC avanzato. Questo wrapper è complementare ed estende la funzionalità di un driver JDBC esistente per aiutare le applicazioni a sfruttare le funzionalità dei database cluster come Aurora PostgreSQL. Il driver è compatibile direttamente con il driver PgJDBC della community.

Per installare il driver AWS JDBC, aggiungi il file.jar del driver AWS JDBC (che si trova nell'applicazione) e mantieni i riferimenti al driver della community pgJDBC. CLASSPATH Aggiorna jdbc:postgresql:// jdbc:aws-wrapper:postgresql:// il prefisso dell'URL di connessione da a.

Per ulteriori informazioni sul driver AWS JDBC e istruzioni complete per il suo utilizzo, consulta l'archivio dei driver JDBC di Amazon Web Services (AWS). GitHub

Connessione ad Aurora PostgreSQL con il driver Python di Amazon Web Services ()AWS

Il driver Python di Amazon Web Services (AWS) è progettato come wrapper Python avanzato. Questo wrapper è complementare ed estende le funzionalità del driver open source Psycopg. Il AWS Python Driver supporta le versioni Python 3.8 e successive. È possibile installare il aws-advanced-python-wrapper pacchetto utilizzando il pip comando, insieme ai pacchetti open source. psycopg

Per ulteriori informazioni sul driver AWS Python e istruzioni complete per il suo utilizzo, consulta il repository Amazon Web Services ()AWS Python Driver. GitHub

Connessione ad Aurora PostgreSQL con Amazon Web Services () Advanced NodeJS Wrapper AWS

L' AWS Advanced NodeJS Wrapper è complementare ed estende la funzionalità di un driver NodeJS esistente. Aiuta le applicazioni a sfruttare le funzionalità dei database cluster come Aurora PostgreSQL.

Per ulteriori informazioni su AWS Advanced NodeJS Wrapper e istruzioni complete per il suo utilizzo, consulta il repository Amazon Web Services (AWS) Advanced NodeJS Wrapper. GitHub

Risoluzione dei problemi di connessione in Aurora

Di seguito, le cause più comuni dei problemi di connessione a un nuovo cluster di database Aurora:

  • Il gruppo di sicurezza nel VPC non consente l'accesso: il tuo VPC deve consentire le connessioni dal tuo dispositivo o da un' EC2 istanza Amazon mediante una corretta configurazione del gruppo di sicurezza nel VPC. Per risolvere il problema, modifica le regole del gruppo di sicurezza del VPC in ingresso in modo da consentire le connessioni. Per un esempio, consulta Tutorial: crea un VPC da utilizzare con un cluster di DB (solo) IPv4 .

  • La porta è bloccata per via delle regole del firewall – Controlla il valore della porta configurato per il cluster di database Aurora. Se una regola del firewall blocca tale porta, puoi ricreare l'istanza utilizzando una porta diversa.

  • La configurazione di IAM è incompleta o non corretta – Se l'istanza database Aurora che hai creato richiede l'utilizzo dell'autenticazione basata su IAM, assicurarti che la configurazione sia corretta. Per ulteriori informazioni, consulta Autenticazione del database IAM .

Per ulteriori informazioni sulla risoluzione dei problemi di connessione al database Aurora, consulta Impossibile connettersi all'istanza database di Amazon RDS.