Azioni dell'area di lavoro della conversione

Le aree di lavoro di conversione ti consentono di risolvere i problemi di conversione, modificare gli oggetti con l'editor interattivo e applicare lo schema convertito al database di destinazione. Questa pagina fornisce una panoramica di tutte le azioni che puoi eseguire con gli spazi di lavoro per le conversioni.

Rimuovi gli oggetti dallo schema di origine

Rimuovi gli oggetti dallo schema di origine per escluderli dalla conversione. Se necessario, puoi aggiungere gli oggetti rimossi in un secondo momento.

  1. Nella console Google Cloud, vai a Aree di lavoro della conversione e seleziona la tua area di lavoro.

    Vai ad Aree di lavoro della conversione

  2. Nella scheda Oracle, accanto all'oggetto da rimuovere, selezionare Altro > Rimuovi.
  3. Nella finestra di dialogo di conferma Rimuovi oggetto, fai clic su Rimuovi.
  4. Aggiorna lo schema convertito. Fai clic su Converti origine. Ora Database Migration Service analizza le modifiche e genera lo schema PostgreSQL aggiornato.

    Puoi esaminare lo schema convertito nella scheda Bozza Cloud SQL per PostgreSQL.

Aggiungere oggetti allo schema di origine

Puoi aggiungere oggetti rimossi in precedenza dallo schema di origine per aggiungerli alla conversione.

  1. Nella console Google Cloud, vai a Aree di lavoro della conversione e seleziona la tua area di lavoro.

    Vai ad Aree di lavoro della conversione

  2. Nella scheda Oracle, fai clic su Aggiungi oggetti.
  3. Nella sezione Aggiungi oggetti, utilizza l'elenco di origine per selezionare tutte le entità da aggiungere allo schema di origine.

    Puoi utilizzare il pulsante Filtra oggetti per ridurre il numero di oggetti visualizzati. Consulta Filtrare gli oggetti nella visualizzazione dello schema di origine

  4. Fai clic su Aggiungi oggetti.
  5. Aggiorna lo schema convertito. Fai clic su Converti origine. Ora Database Migration Service analizza le modifiche e genera lo schema PostgreSQL aggiornato.

    Puoi esaminare lo schema convertito nella scheda Bozza Cloud SQL per PostgreSQL.

Esegui il pull dello snapshot dello schema e del codice di origine

Puoi estrarre lo schema e il codice dal database di origine nell'area di lavoro di conversione in qualsiasi momento. L'estrazione dell'origine ti offre l'opportunità di aggiungere nuovi oggetti o di aggiornare quelli esistenti nella conversione.

L'estrazione dello schema e del codice del database aggiornato non reimposta i mapping personalizzati esistenti nell'area di lavoro di conversione, a meno che tu non scelga esplicitamente di rimuovere i mapping personalizzati.

Inoltre, il recupero del codice sorgente non sostituisce le modifiche SQL agli oggetti del codice. Puoi reimpostare queste modifiche direttamente a livello di oggetto.

  1. Nella console Google Cloud, vai a Aree di lavoro della conversione e seleziona la tua area di lavoro.

    Vai ad Aree di lavoro della conversione

  2. Fai clic su Modifica configurazione > Esegui di nuovo il pull dello snapshot dello schema di origine.
  3. Nella finestra di dialogo:
    1. (Facoltativo) Seleziona Reimposta mapping personalizzato per rimuovere le mappature personalizzate e le modifiche DDL esistenti.
    2. Fai clic su Esegui il pull dello snapshot dello schema.

      Database Migration Service estrae il nuovo snapshot dal database di origine.

  4. Aggiorna lo schema convertito. Fai clic su Converti origine. Ora Database Migration Service analizza le modifiche e genera lo schema PostgreSQL aggiornato.

    Puoi esaminare lo schema convertito nella scheda Bozza Cloud SQL per PostgreSQL.

Utilizzare le mappature delle conversioni personalizzate

Puoi personalizzare la logica di conversione con un file di mappatura delle conversioni. Il file di mappatura delle conversioni è un file di testo contenente istruzioni precise (chiamate direttive di conversione) su come gli oggetti Oracle devono essere convertiti in oggetti PostgreSQL.

Scrivere un file di mappatura personalizzato

Per scrivere i file di mappatura personalizzati:

  1. Esamina l'elenco delle istruzioni di conversione supportate.

  2. Utilizza il file di configurazione di esempio come punto di riferimento.

  3. Scrivi le mappature delle conversioni personalizzate in un editor di testo e caricale nella tua area di lavoro della conversione.

Aggiungere file di mappatura personalizzati

Per aggiungere un file di mappatura delle conversioni personalizzate alla tua area di lavoro:

  1. Nella console Google Cloud, vai a Aree di lavoro della conversione e seleziona la tua area di lavoro.

    Vai ad Aree di lavoro della conversione

  2. Nella pagina dell'editor delle conversioni, seleziona Modifica configurazione > Personalizza la mappatura con un file di configurazione.
  3. Nella casella File di configurazione, fai clic su Sfoglia e utilizza il selettore dei file di sistema per selezionare il file di configurazione.
  4. Fai clic su Aggiungi file > Crea mappatura.

Rimuovere i file di mapping personalizzato

Per rimuovere un file di mappatura delle conversioni personalizzate dallo spazio di lavoro:

  1. Nella console Google Cloud, vai a Aree di lavoro della conversione e seleziona la tua area di lavoro.

    Vai ad Aree di lavoro della conversione

  2. Nella pagina dell'editor delle conversioni, seleziona Modifica configurazione > Rimuovi mappatura personalizzata.

Esamina i risultati della conversione

Dopo aver eseguito la conversione dell'origine, puoi esaminare i risultati della conversione e i possibili problemi per ogni singolo oggetto convertito nell'area di modifica dell'area di lavoro. Puoi anche utilizzare Google Cloud CLI per salvare tutti i risultati e i problemi in blocco in un file di testo.

Console

  1. Nella console Google Cloud, vai a Aree di lavoro della conversione.

    Vai ad Aree di lavoro della conversione

  2. Fai clic sul nome visualizzato dello spazio di lavoro per le conversioni con cui vuoi lavorare.

    Viene visualizzato l'editor dello spazio di lavoro della conversione.

  3. Seleziona la scheda Oracle e individua l'oggetto per cui vuoi esaminare i risultati di conversione nella tabella della visualizzazione ad albero.

  4. Seleziona l'oggetto. Utilizza le schede SQL e Problemi di conversione per esaminare la conversione.

gcloud

Con Google Cloud CLI puoi stampare tutti i risultati o i problemi di conversione sul terminale. Reindirizza l'output a un file per rivedere più facilmente gli oggetti collettivamente.

Visualizzare un elenco dei risultati di conversione

gcloud CLI mostra i risultati della conversione nel terminale sotto forma di istruzioni Data Definition Language (DDL). Per salvare i risultati della conversione in un file, esegui il seguente comando:

  gcloud database-migration conversion-workspaces describe-ddls \
  CONVERSION_WORKSPACE_ID \
  --region=REGION_ID \
  > OUTPUT_FILE_PATH

Sostituisci:

  • CONVERSION_WORKSPACE_ID con l'identificatore dell'area di lavoro della conversione. Per informazioni su come recuperare gli identificatori dello spazio di lavoro della conversione, consulta Visualizzare i dettagli dello spazio di lavoro della conversione.
  • REGION_ID con il nome della regione in cui si trova lo spazio di lavoro della conversione.
  • OUTPUT_FILE_PATH con il percorso del file di testo in cui vuoi salvare l'output.

    Esempio:

    gcloud database-migration conversion-workspaces describe-issues \
    my-conversion-workspace \
    --region=us-central1 \
    > ./my-conversion-issues.txt
    

    Risultato:

    I risultati della conversione dello schema vengono salvati in un formato di testo in cui la prima riga è DDLs e le righe successive sono occupate da istruzioni SQL:

    DDLs
    CREATE SCHEMA IF NOT EXISTS "SCHEMA1";
    ALTER TABLE "SCHEMA1"."EMPLOYEES" ADD CONSTRAINT PK_ID PRIMARY KEY ("ID");
    CREATE OR REPLACE FUNCTION mockschema.func_test_datatype(str1 VARCHAR(65000))
      RETURNS DECIMAL
      LANGUAGE plpgsql
      AS $$
        DECLARE
          str2 VARCHAR(100);
        BEGIN
          SELECT
              employees.first_name
            INTO STRICT
              STR2
            FROM
              mockschema.employees
            WHERE employees.employee_id = CAST(FUNC_TEST_DATATYPE.str1 as DECIMAL)
          ;
          RAISE NOTICE '%', concat('Input : ', FUNC_TEST_DATATYPE.str1, ' Output : ', str2);
          RETURN 0;
        END;
      $$;
    CREATE OR REPLACE PROCEDURE greetings AS BEGIN dbms_output.put_line('Hello World!'); END;
    CREATE SYNONYM TABLE "SCHEMA1"."SYNONYM1" ON "SCHEMA1"."EMPLOYEES";
    CREATE OR REPLACE VIEW "SCHEMA1"."VIEW1" AS SELECT * FROM JOBS;
    

Visualizzare un elenco di problemi di conversione

Per salvare i problemi di conversione in un file, esegui il seguente comando:

  gcloud database-migration conversion-workspaces describe-issues \
  CONVERSION_WORKSPACE_ID \
  --region=REGION_ID \
  > OUTPUT_FILE_PATH

Sostituisci:

  • CONVERSION_WORKSPACE_ID con l'identificatore dell'area di lavoro della conversione. Per informazioni su come recuperare gli identificatori dello spazio di lavoro della conversione, consulta Visualizzare i dettagli dello spazio di lavoro della conversione.
  • REGION_ID con il nome della regione in cui si trova lo spazio di lavoro della conversione.
  • OUTPUT_FILE_PATH con il percorso del file di testo in cui vuoi salvare l'output.

Esempio:

  gcloud database-migration conversion-workspaces describe-issues \
  my-conversion-workspace \
  --region=us-central1 \
  > ./my-conversion-issues.txt

Risultato:

Tutti i problemi di conversione contenuti nello spazio di lavoro vengono salvati in un formato di testo in cui la prima riga contiene le intestazioni delle colonne e ogni riga successiva contiene un problema di conversione distinto:

  PARENT   NAME               ENTITY_TYPE       ISSUE_TYPE  ISSUE_SEVERITY  ISSUE_CODE  ISSUE_MESSAGE
  SCHEMA1  EMPLOYEES          TABLE             DDL         ERROR           500         unable to parse DDL.
  SCHEMA1  EMPLOYEES          TABLE             CONVERT     WARNING         206         no conversion done.
  SCHEMA1  STORED_PROCEDURE1  STORED_PROCEDURE  DDL         ERROR           500         invalid DDL.
  SCHEMA1  SYNONYM1           SYNONYM           CONVERT     WARNING         206         synonym warning message.

Risolvi i problemi di conversione

Database Migration Service potrebbe non essere in grado di convertire automaticamente l'intera origine. Per la maggior parte degli oggetti Oracle, puoi utilizzare l'editor di conversione direttamente in Database Migration Service per modificare il codice SQL generato. Per altri, potresti dover modificare l'oggetto direttamente nel database di origine e poi eseguire nuovamente il pull dello snapshot di origine.

Per un elenco completo degli oggetti che Database Migration Service supporta per la modifica direttamente nell'area di lavoro di conversione, consulta Oggetti Oracle modificabili.

Risolvere i problemi relativi agli oggetti supportati dall'editor integrato

Per risolvere i problemi riscontrati con gli oggetti non supportati nell'editor dell'area di lavoro, esegui una delle seguenti operazioni:

  1. Esamina i risultati della conversione e identifica i possibili problemi.

    Puoi utilizzare la console Google Cloud per esaminare singoli oggetti o l'interfaccia a riga di comando gcloud per esaminare tutti gli oggetti collettivamente.

  2. Nella scheda Cloud SQL per PostgreSQL, utilizza l'editor SQL per aggiornare il codice generato.
  3. Testa lo schema per verificare che Database Migration Service possa applicare correttamente il codice al database di destinazione.

Risolvere i problemi relativi agli oggetti non supportati dall'editor integrato

Per risolvere i problemi riscontrati con gli oggetti non supportati nell'editor dell'area di lavoro, esegui una delle seguenti operazioni:

Aggiorna gli oggetti difettosi nell'origine
Per alcuni problemi, potrebbe essere necessario modificare l'istruzione Oracle direttamente nel database di origine. Procedi nel seguente modo:
  1. Aggiorna lo schema e il codice direttamente nel database di origine.
  2. Estrai le origini aggiornate in Database Migration Service.
  3. Converti di nuovo le origini e controlla se i problemi persistono.
Fornire mappature aggiuntive con un file di mappatura delle conversioni

Puoi utilizzare un file di mappatura delle conversioni per fornire definizioni precise su come Database Migration Service deve convertire determinati oggetti PostgreSQL. Per utilizzare un file di mappatura delle conversioni:

  1. Scrivi un file di mappatura delle conversioni.
  2. Aggiungi il file di configurazione allo spazio di lavoro.
Prova a rimuovere l'oggetto dalla scheda Origini
Database Migration Service ti consente di convertire . Per sbloccare il processo di conversione, puoi decidere di esaminare più da vicino l'oggetto con problemi in un secondo momento. Rimuovi l'oggetto dalla scheda Origini.

Testa lo schema nella destinazione

Prima di applicare lo schema al database di destinazione, puoi eseguire un'esecuzione di prova per verificare in modo proattivo la presenza di eventuali problemi. Per eseguire il test, Database Migration Service crea un database temporário. L'esecuzione del test non influisce sull'istanza Cloud SQL di destinazione.

  1. Assicurati che l'utente dedicato alla migrazione disponga dell'autorizzazione CREATEDB. Per saperne di più, consulta Creare e configurare l'istanza Cloud SQL di destinazione.

  2. Nella console Google Cloud, vai a Aree di lavoro della conversione.

    Vai ad Aree di lavoro della conversione

  3. Fai clic sul nome visualizzato dello spazio di lavoro per le conversioni con cui vuoi lavorare.

    Viene visualizzato l'editor dello spazio di lavoro della conversione.

  4. Fai clic su Applica alla destinazione > Test (consigliato).

    Viene visualizzata la procedura guidata per l'applicazione dello schema al database di destinazione.

  5. Nella sezione Definisci destinazione, seleziona il profilo di connessione che fa riferimento al database di destinazione.

  6. Fai clic su Definisci e continua.

  7. Nella sezione Seleziona gli oggetti ed esegui il test dell'applicazione, seleziona gli schemi delle entità di database che vuoi testare per il database di destinazione.

    Puoi utilizzare il pulsante Filtra oggetti per ridurre il numero di oggetti visualizzati. Consulta Filtrare gli oggetti nella visualizzazione dello schema di origine.

  8. Fai clic su Testa applicazione.

    Puoi esaminare lo stato della richiesta nella scheda Cloud SQL per PostgreSQL.

Applica lo schema alla destinazione

Quando lo schema che vuoi utilizzare nel database di destinazione viene convertito in base ai tuoi requisiti e mapping, puoi applicare i risultati al database di destinazione. L'applicazione dello schema nella destinazione non altera i dati nel database di origine.

  1. Nella console Google Cloud, vai a Aree di lavoro della conversione.

    Vai ad Aree di lavoro della conversione

  2. Fai clic sul nome visualizzato dello spazio di lavoro per le conversioni con cui vuoi lavorare.

    Viene visualizzato l'editor dello spazio di lavoro della conversione.

  3. Fai clic su Applica alla destinazione > Applica.

    Viene visualizzata la procedura guidata per l'applicazione dello schema al database di destinazione.

  4. Nella sezione Definisci destinazione, seleziona il profilo di connessione che fa riferimento al database di destinazione.

  5. Fai clic su Definisci e continua.

  6. Nella sezione Esamina gli oggetti e applica la conversione alla destinazione, seleziona gli schemi delle entità di database che vuoi creare nel database di destinazione.

    Puoi utilizzare il pulsante Filtra oggetti per ridurre il numero di oggetti visualizzati. Consulta Filtrare gli oggetti nella visualizzazione dello schema di origine.

  7. Fai clic su Applica alla destinazione.

    Puoi esaminare lo stato della richiesta nella scheda Cloud SQL per PostgreSQL.

Creare un job di migrazione dall'editor di conversione

Puoi creare un job di migrazione che utilizza lo spazio di lavoro delle conversioni direttamente dall'interfaccia di Editor delle conversioni.

  1. Nella console Google Cloud, vai a Aree di lavoro della conversione.

    Vai ad Aree di lavoro della conversione

  2. Fai clic sul nome visualizzato dello spazio di lavoro per le conversioni con cui vuoi lavorare.

    Viene visualizzato l'editor dello spazio di lavoro della conversione.

  3. Fai clic su Crea job di migrazione.

  4. Procedi con i passaggi standard del job di migrazione, come descritto in Creare un job di migrazione.

Filtrare gli oggetti nella visualizzazione dello schema di origine

Gli schemi di database contengono spesso migliaia di oggetti, il che rende difficile eseguire la conversione in parti. Quando aggiungi oggetti dall'istantanea dello schema alla visualizzazione dello schema di origine, puoi utilizzare i filtri per limitare il numero di oggetti visualizzati. I filtri ti consentono di aggiungere oggetti in modo più granulare e di concentrarti sulla conversione di un sottoinsieme selezionato dello schema.

Utilizza la visualizzazione filtrata quando aggiungi oggetti alla visualizzazione dello schema di origine:

  1. Nel campo Filtro, utilizza uno dei seguenti metodi di filtro:
  2. Nell'elenco Proprietà, seleziona una delle seguenti opzioni suggerite automaticamente:
    1. Nome oggetto per filtrare gli oggetti in base a un nome, ad esempio ADMIN.
    2. Tipo di oggetto per filtrare gli oggetti in base a diversi tipi, ad esempio Funzione o Tabella.
    3. Stato conversione per filtrare gli oggetti in base allo stato di conversione, ad esempio Azione richiesta o Nessun problema.

      Puoi combinare le proprietà filtro con gli operatori logici.

  3. Inserisci la query. Ad esempio: type=table.

    Per ulteriori informazioni sulla sintassi di filtro, consulta Sintassi di filtro supportata.

  4. Seleziona gli oggetti da aggiungere alla visualizzazione dello schema di origine.

Sintassi di filtro supportata

Puoi filtrare gli oggetti per nome con una ricerca di testo libero di base o utilizzare una proprietà type dedicata. Entrambi gli approcci supportano la specifica formale dell'API Google per i filtri, il che significa che puoi utilizzare letterali con caratteri jolly, nonché operatori di confronto e logici.

Utilizza il testo libero per filtrare gli oggetti in base al nome. Questo approccio è sensibile alle maiuscole e supporta i caratteri jolly.

Esempio:

La query *JOB* utilizza i caratteri jolly per cercare le entità che contengono la sottostringa JOB. La visualizzazione filtrata restituisce alcune tabelle e una stored procedure:

Screenshot di risultati di esempio per filtrare gli oggetti per nome.
Filtra utilizzando la proprietà type

Puoi filtrare gli oggetti in base a tutti i tipi standard supportati in Database Migration Service.

La proprietà type supporta i seguenti valori letterali con gli operatori di uguaglianza (=) e di disuguaglianza (!=): database, schema, table, column, index, sequence, stored_procedure, function, view, synonym, materialized_view, udt, constraint, database_package, trigger e event_trigger.

Esempio:

Il filtro type=table restituisce solo le tabelle presenti nel tuo schema:

Screenshot di risultati di esempio per il filtro degli oggetti in base alla proprietà type.
Combinare le condizioni di filtro

Puoi specificare più condizioni combinandole con operatori logici.

Ad esempio, per cercare esclusivamente tabelle i cui nomi contengono le sottostringhe JOB o EMPLOYEE, utilizza questa query:

  type=table AND (*JOB* OR *EMPLOYEE*)

Di conseguenza, il filtro mostra tutte le tabelle corrispondenti:

Screenshot di risultati di esempio per filtrare gli oggetti in base a una combinazione di proprietà di tipo e nome.