Impostazioni di conversione da Oracle a PostgreSQL - AWS Servizio di migrazione del Database

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

Impostazioni di conversione da Oracle a PostgreSQL

Le impostazioni di conversione da Oracle a PostgreSQL nella conversione dello schema DMS sono le seguenti:

  • AWS DMS può convertire le viste materializzate Oracle in tabelle o viste materializzate su PostgreSQL. Per Viste materializzate scegli come convertire le viste materializzate di origine.

  • Il database Oracle di origine può utilizzare la pseudo colonna ROWID. PostgreSQL non supporta funzionalità simili. La conversione dello schema DMS può emulare la pseudo colonna ROWID nel codice convertito utilizzando il tipo di dati bigint o character varying. Per farlo, scegli Usa il tipo di dati bigint per emulare la pseudo colonna ROWID o Usa il tipo di dati varchar per emulare la pseudo colonna ROWID per ID riga.

    Se il codice sorgente Oracle non utilizza la pseudo colonna ROWID scegli Non generare. In questo caso, il codice convertito funziona più velocemente.

  • Il codice sorgente Oracle può includere le funzioni TO_CHAR, TO_DATE e TO_NUMBER con parametri non supportati da PostgreSQL. Per impostazione predefinita, la conversione dello schema DMS emula l'utilizzo di questi parametri nel codice convertito.

    È possibile utilizzare le funzioni TO_CHAR, TO_DATE e TO_NUMBER native di PostgreSQL quando il codice sorgente Oracle non ha parametri non supportati da PostgreSQL. In questo caso, il codice convertito funziona più velocemente. Per farlo, seleziona i seguenti valori:

    • Usa una funzione PostgreSQL TO_CHAR nativa

    • Usa una funzione PostgreSQL TO_DATE nativa

    • Usa una funzione PostgreSQL TO_NUMBER nativa

  • Il database e le applicazioni possono essere eseguiti in fusi orari diversi. Per impostazione predefinita, la conversione dello schema DMS emula i fusi orari nel codice convertito. Tuttavia, non è necessaria questa emulazione quando il database e le applicazioni utilizzano lo stesso fuso orario. In tal caso, seleziona Migliora le prestazioni del codice convertito se il database e le applicazioni utilizzano lo stesso fuso orario.

  • Per continuare a utilizzare le sequenze nel codice convertito, seleziona Popola le sequenze convertite con l'ultimo valore generato sul lato di origine.

  • In alcuni casi, il database Oracle di origine potrebbe archiviare solo valori interi nelle colonne con chiave primaria o esterna del tipo di dati NUMBER. In questi casi, AWS DMS può convertire queste colonne nel tipo di dati. BIGINT Questo approccio migliora le prestazioni del codice convertito. A tale scopo, seleziona Converti le colonne chiave primaria ed esterna del tipo di dati NUMBER nel tipo di dati BIGINT. Assicurati che l'origine non includa valori con virgola mobile in queste colonne per evitare la perdita di dati.

  • Per ignorare i trigger e i vincoli disattivati nel codice sorgente, scegli Converti solo i trigger e i vincoli attivi.

  • Puoi utilizzare la conversione dello schema DMS per convertire le variabili di stringa chiamate come SQL dinamico. Il codice del database può modificare i valori di queste variabili di stringa. Per assicurarti che converta AWS DMS sempre il valore più recente di questa variabile di stringa, seleziona Converti il codice SQL dinamico creato nelle routine chiamate.

  • PostgreSQL 10 e versioni precedenti non supportano le procedure. Se non hai familiarità con l'uso delle procedure in PostgreSQL AWS DMS , puoi convertire le procedure Oracle in funzioni PostgreSQL. A tale scopo, seleziona Converti procedure in funzioni.

  • Per visualizzare informazioni aggiuntive sugli elementi d'azione eseguiti, è possibile aggiungere funzioni specifiche al pacchetto di estensione. A tale scopo, seleziona Aggiungi funzioni del pacchetto di estensione che generano eccezioni definite dall'utente. Quindi scegli i livelli di gravità per generare le eccezioni definite dall'utente. Assicurati di applicare lo schema del pacchetto di estensione dopo aver convertito gli oggetti del database di origine. Per ulteriori informazioni sui pacchetti di estensione, consulta Utilizzo dei pacchetti di estensione.

  • Il database Oracle di origine può includere vincoli per i nomi generati automaticamente. Se il codice sorgente utilizza questi nomi, assicurati di selezionare Mantieni i nomi dei vincoli generati dal sistema. Se il codice sorgente utilizza questi vincoli, ma non ne usa i nomi, deseleziona questa opzione per aumentare la velocità di conversione.

  • Se i database di origine e di destinazione vengono eseguiti in fusi orari diversi, la funzione che emula la funzione integrata Oracle SYSDATE restituisce valori diversi rispetto alla funzione di origine. Per assicurarti che le funzioni di origine e di destinazione restituiscano gli stessi valori, scegli Imposta il fuso orario del database di origine.

  • Puoi utilizzare le funzioni dell'estensione orafce nel codice convertito. Per farlo, seleziona le funzioni da usare per Routine integrate Orafce. Per ulteriori informazioni su orafce, vedere orafce on. GitHub