Per spostare i database in o da AlloyDB per PostgreSQL, puoi eseguire la migrazione delle istanze PostgreSQL attive con tempi di inattività minimi utilizzando Database Migration Service o importare ed esportare file CSV, DMP e SQL archiviati in Cloud Storage.
Importazione dei dati
Puoi eseguire la migrazione dei dati in AlloyDB in due modi:
Importando manualmente i file contenenti i tuoi dati.
Utilizzo di Database Migration Service per eseguire la migrazione dei contenuti di un'intera istanza PostgreSQL attiva in un nuovo cluster AlloyDB. Per saperne di più, consulta Esegui la migrazione ad AlloyDB per PostgreSQL utilizzando Database Migration Service.
Importa i dati archiviati dai file
AlloyDB ti consente di importare dati da file che si trovano in un bucket Cloud Storage. AlloyDB supporta vari formati file per l'importazione dei dati, tra cui:
CSV, con i contenuti di una tabella per file, caricati utilizzando
psql.DMP, un archivio binario di un intero database PostgreSQL, importato utilizzando
pg_restore.SQL, una ricostruzione in testo normale di un database PostgreSQL, elaborata con
psql.
Esegui la migrazione di un'istanza attiva con Database Migration Service
In alternativa all'importazione manuale dei file di dump dei dati, puoi utilizzare Database Migration Service per AlloyDB. Questo servizio ti consente di eseguire la migrazione dell'intero contenuto di un'istanza PostgreSQL attiva, inclusi tutti i relativi database e metadati, in un nuovo cluster AlloyDB. Database Migration Service può aiutarti a eseguire la transizione delle tue applicazioni esistenti all'utilizzo di AlloyDB come nuovo datastore con tempi di inattività minimi.
Impostazioni internazionali supportate per i dati importati
AlloyDB supporta le seguenti impostazioni internazionali:
- Il set completo di impostazioni internazionali fornite da T.I..
- Un insieme limitato di impostazioni internazionali fornite da
libc:C.UTF-8en_US.utf8
Se il database che vuoi importare in AlloyDB utilizza per impostazione predefinita
un'impostazione locale libc diversa dalle due elencate qui, puoi comunque importare
i dati, ma l'impostazione predefinita non verrà trasferita. Per assicurarti che le query SQL che utilizzano ORDER BY ordinino correttamente i risultati, potresti dover eseguire passaggi aggiuntivi dopo l'importazione dei dati.
Google consiglia di consentire al nuovo database di utilizzare le impostazioni internazionali predefinite per AlloyDB: C.UTF-8, fornite da libc. Quindi, associa le regole di confronto a tutte le colonne che le query della tua applicazione potrebbero coinvolgere nelle clausole ORDER BY, assegnando un nome a una regola di confronto basata su T.I. appropriata per ciascuna. Puoi farlo tramite query DDL ALTER TABLE, come le seguenti:
ALTER TABLE TABLE_NAME
ALTER COLUMN COLUMN_NAME
SET DATA TYPE COLUMN_DATA_TYPE
COLLATE "COLLATION_NAME";
Sostituisci quanto segue:
TABLE_NAME: il nome della tabella contenente la colonna.COLUMN_NAME: il nome della colonna da aggiornare.COLUMN_DATA_TYPE: il tipo di dati della colonna.COLLATION_NAME: il nome della regole di confronto basata su T.I. da applicare.
Un nuovo cluster AlloyDB definisce centinaia di regole di confronto basate sulle impostazioni internazionali fornite da T.I.. Puoi aggiungerne altre utilizzando la funzionalità CREATE COLLATION di PostgreSQL. Per visualizzare l'elenco completo dei nomi di regole di confronto basate su T.I. definite in un cluster AlloyDB, esegui questa query su una delle sue istanze:
SELECT collname FROM pg_collation WHERE collprovider = 'i';
Oltre alle regole di confronto basate su T.I., AlloyDB supporta la regola di confronto integrata di PostgreSQL denominata ucs_basic. Questa regole di confronto utilizza l'ordine standard dei punti di codice Unicode per consentire un ordinamento particolarmente efficiente. Google ne consiglia l'utilizzo con colonne il cui ordinamento appropriato corrisponde a quello dell'elenco dei punti di codice Unicode.
Esportazione di dati
Puoi utilizzare le utilità a riga di comando per esportare i dati AlloyDB in file archiviati in un bucket Cloud Storage, in vari formati:
CSV, esportando una tabella per file, utilizzando
psql.DMP, utilizzando
pg_dumpper creare un archivio binario portatile dell'intero database.SQL, utilizzando
pg_dumpper creare un elenco di istruzioni DDL e istruzioni SQL per ricostruire il database.