Usare PostgreSQL come fonte perAWS SCT - AWS Schema Conversion Tool

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

Usare PostgreSQL come fonte perAWS SCT

È possibile utilizzarliAWS SCT per convertire schemi, oggetti di codice del database e codice dell'applicazione da PostgreSQL ai seguenti obiettivi:

  • Amazon RDS for MySQL

  • Amazon Aurora MySQL-Compatible Edition

  • Amazon RDS for PostgreSQL

  • Amazon Aurora PostgreSQL-Compatible Edition

Per ulteriori informazioni, consulta le sezioni seguenti:

Privilegi per PostgreSQL come database di origine

I privilegi richiesti per PostgreSQL come sorgente sono i seguenti:

  • CONNECT ON DATABASE <database_name>

  • USAGE ON SCHEMA <database_name>

  • SELECT ON ALL TABLES IN SCHEMA <database_name>

  • SELECT ON ALL SEQUENCES IN SCHEMA <database_name>

Connessione a PostgreSQL come sorgente

Utilizza la seguente procedura per connetterti al database di origine PostgreSQL con AWS Schema Conversion Tool.

Per connetterti a un database di origine PostgreSQL
  1. NelAWS Schema Conversion Tool, scegli Aggiungi fonte.

  2. Scegli PostgreSQL, quindi scegli Avanti.

    Viene visualizzata la finestra di dialogo Aggiungi sorgente.

  3. Per Nome di connessione, immettere un nome per il database. AWS SCTvisualizza questo nome nell'albero nel pannello di sinistra.

  4. Usa le credenziali del databaseAWS Secrets Manager o inseriscile manualmente:

    • Per utilizzare le credenziali del database di Secrets Manager, utilizza le seguenti istruzioni:

      1. Per AWS Secret, scegli il nome del segreto.

      2. Scegli Popula per inserire automaticamente tutti i valori nella finestra di dialogo di connessione al database di Secrets Manager.

      Per informazioni sull'utilizzo delle credenziali del database di Secrets Manager, vedereUtilizzo di AWS Secrets Manager.

    • Per inserire manualmente le informazioni di connessione al database di origine PostgreSQL, usa le seguenti istruzioni:

      Parametro Operazione
      Server name (Nome del server)

      Immettere il nome Domain Name System (Domain Name System) o l'indirizzo IP del server di database di origine.

      Puoi connetterti al database PostgreSQL di origine utilizzando un protocollo di indirizzi IPv6. Per fare ciò, assicurati di utilizzare parentesi quadre per immettere l'indirizzo IP, come mostrato nell'esempio seguente.

      [2001:db8:ffff:ffff:ffff:ffff:ffff:fffe]
      Porta del server

      Immetti la porta utilizzata per la connessione al server del database di origine.

      Database

      Immetti il nome del database PostgreSQL.

      User name (Nome utente) e Password (Password)

      Immettere le credenziali del database per la connessione al server del database di origine.

      AWS SCTutilizza la password per connettersi al database di origine solo quando si sceglie di connettersi al database in un progetto. Per evitare di esporre la password per il database di origine,AWS SCT non memorizza la password per impostazione predefinita. Se chiudi il tuo progetto AWS SCT e lo riapri, ti viene richiesta la password per la connessione al database di origine in base alle necessità.

      Use SSL (Usa SSL)

      Scegli questa opzione per utilizzare Secure Sockets Layer (SSL) per la connessione al database. Fornisci le seguenti informazioni aggiuntive, a seconda dei casi, nella scheda SSL:

      • Verifica certificato del server: seleziona questa opzione per verificare il certificato del server utilizzando un trust store.

      • Trust store: l'ubicazione di un trust store contenente certificati. Affinché questa posizione venga visualizzata nella sezione Impostazioni globali, assicurati di aggiungerla.

      Memorizza la password

      AWS SCT crea un insieme di credenziali sicure per archiviare i certificati SSL e le password del database. Abilitando questa opzione potrai archiviare la password del database e connetterti in modo rapido al database senza dover inserire la password.

      Percorso del driver PostgreSQL

      Immetti il percorso al driver da utilizzare per la connessione al database di origine. Per ulteriori informazioni, consulta Scaricamento dei driver di database richiesti.

      Se archivi il percorso del driver nelle impostazioni globali del progetto, il percorso del driver non viene visualizzato nella finestra di dialogo della connessione. Per ulteriori informazioni, consulta Memorizzazione dei percorsi dei driver nelle impostazioni globali.

  5. Scegli Connessione di prova per verificare che sia inAWS SCT grado di connettersi al database di origine.

  6. Scegli Connect per connetterti al tuo database di origine.

Privilegi per MySQL come database di destinazione

I privilegi richiesti per MySQL come destinazione durante la migrazione da PostgreSQL sono i seguenti:

  • CREA SU* . *

  • MODIFICA DI * . *

  • SALTA SU * . *

  • INDICE SU * . *

  • RIFERIMENTI SU * . *

  • SELECT ON *.*

  • CREA UNA VISTA SU* . *

  • SHOW VIEW ON *.*

  • ATTIVAZIONE SU * . *

  • CREA UNA ROUTINE SU* . *

  • MODIFICA LA ROUTINE SU * . *

  • ESEGUI SU* . *

  • INSERISCI, AGGIORNA SU AWS_POSTGRESQL_EXT. *

  • INSERISCI, AGGIORNA, ELIMINA SU AWS_POSTGRESQL_EXT_DATA. *

  • CREARE TABELLE TEMPORANEE SU AWS_POSTGRESQL_EXT_DATA. *

È possibile utilizzare il seguente esempio di codice per creare un utente del database e concedere i privilegi.

CREATE USER 'user_name' IDENTIFIED BY 'your_password'; GRANT CREATE ON *.* TO 'user_name'; GRANT ALTER ON *.* TO 'user_name'; GRANT DROP ON *.* TO 'user_name'; GRANT INDEX ON *.* TO 'user_name'; GRANT REFERENCES ON *.* TO 'user_name'; GRANT SELECT ON *.* TO 'user_name'; GRANT CREATE VIEW ON *.* TO 'user_name'; GRANT SHOW VIEW ON *.* TO 'user_name'; GRANT TRIGGER ON *.* TO 'user_name'; GRANT CREATE ROUTINE ON *.* TO 'user_name'; GRANT ALTER ROUTINE ON *.* TO 'user_name'; GRANT EXECUTE ON *.* TO 'user_name'; GRANT INSERT, UPDATE ON AWS_POSTGRESQL_EXT.* TO 'user_name'; GRANT INSERT, UPDATE, DELETE ON AWS_POSTGRESQL_EXT_DATA.* TO 'user_name'; GRANT CREATE TEMPORARY TABLES ON AWS_POSTGRESQL_EXT_DATA.* TO 'user_name';

Nell'esempio precedente, sostituisci user_name con il nome del tuo utente. Quindi, sostituisci your_password con una password sicura.

Per utilizzare Amazon RDS for MySQL o Aurora MySQL come destinazione, imposta illower_case_table_names parametro su1. Questo valore indica che il server MySQL gestisce gli identificatori di nomi di oggetti come tabelle, indici, trigger e database senza distinzione tra maiuscole e minuscole. Se hai attivato la registrazione binaria nell'istanza di destinazione, imposta illog_bin_trust_function_creators parametro su1. In questo caso, non è necessario utilizzare leDETERMINISTICNO SQL caratteristicheREADS SQL DATA o per creare funzioni memorizzate. Per configurare questi parametri, crea un gruppo di parametri di database o modificane uno esistente.