Acciones del espacio de trabajo de conversión

Los espacios de trabajo de conversión le permiten solucionar problemas de conversión, modificar sus objetos con el editor interactivo y aplicar el esquema convertido a su base de datos de destino. Esta página proporciona una descripción general de todas las acciones que puede realizar con los espacios de trabajo de conversión.

Actualización de espacios de trabajo para la conversión automática impulsada por Gemini

Los espacios de trabajo de conversión actualizados brindan acceso a las funciones de conversión automática impulsadas por Gemini .

Puede actualizar un espacio de trabajo de conversión solo cuando accede a él por primera vez inmediatamente después de su creación aceptando la oferta en el cuadro de diálogo:

cuadro de diálogo que muestra la oferta de actualización del espacio de trabajo de conversión         en la interfaz del espacio de trabajo de Conversión.
Figura 1. Oferta de actualización del espacio de trabajo de conversión. (haga clic para ampliar)
cuadro de diálogo que muestra la oferta de actualización del espacio de trabajo de conversión       en la interfaz del espacio de trabajo de Conversión.

No puede actualizar un espacio de trabajo de conversión existente. Si desea utilizar las funciones actualizadas del espacio de trabajo de conversión, cree un nuevo espacio de trabajo de conversión para usarlo con su trabajo de migración.

Eliminar objetos del esquema fuente

Elimine objetos del esquema de origen para excluirlos de la conversión. Más adelante podrá agregar objetos eliminados si es necesario.

  1. En el Google Cloud consola, vaya a Espacios de trabajo de conversión y seleccione su espacio de trabajo.

    Ir a espacios de trabajo de conversión

  2. En la pestaña Oracle , junto al objeto que desea eliminar, seleccione Más > Eliminar .
  3. En el cuadro de diálogo de confirmación Eliminar objeto , haga clic en Eliminar .
  4. Actualice su esquema convertido. Haga clic Convertir fuente . El Servicio de migración de bases de datos ahora analiza sus cambios y genera el esquema PostgreSQL actualizado.

    Puedes inspeccionar el esquema convertido en la pestaña borrador de Cloud SQL para PostgreSQL .

Agregar objetos al esquema fuente

Puede agregar objetos previamente eliminados del esquema de origen para agregarlos a la conversión.

  1. En el Google Cloud consola, vaya a Espacios de trabajo de conversión y seleccione su espacio de trabajo.

    Ir a espacios de trabajo de conversión

  2. En la pestaña Oracle , haga clic en Agregar objetos .
  3. En la sección Agregar objetos , use la lista de origen para seleccionar todas las entidades que desea agregar al esquema de origen.

    Puede utilizar el botón Filtrar objetos para reducir el número de objetos mostrados. Ver Filtrar objetos en la vista del esquema de origen.

  4. Haga clic en Agregar objetos .
  5. Actualice su esquema convertido. Haga clic Convertir fuente . El Servicio de migración de bases de datos ahora analiza sus cambios y genera el esquema PostgreSQL actualizado.

    Puedes inspeccionar el esquema convertido en la pestaña borrador de Cloud SQL para PostgreSQL .

Extraiga el esquema fuente y la instantánea del código

Puede extraer esquemas y códigos de su base de datos de origen al espacio de trabajo de conversión en cualquier momento. Extraer la fuente le brinda la oportunidad de agregar objetos nuevos o actualizar objetos existentes en la conversión.

La extracción del esquema y el código de la base de datos actualizados no restablece ninguna asignación personalizada que exista en el espacio de trabajo de conversión, a menos que elija explícitamente eliminar las asignaciones personalizadas.

Además, extraer la fuente no anula los cambios de SQL en los objetos de su código. Puede restablecer estos cambios directamente en el nivel de objeto.

  1. En el Google Cloud consola, vaya a Espacios de trabajo de conversión y seleccione su espacio de trabajo.

    Ir a espacios de trabajo de conversión

  2. Haga clic en Editar configuración > Extraer instantánea del esquema de origen nuevamente .
  3. En el cuadro de diálogo:
    1. Opcional: seleccione Restablecer asignación personalizada para eliminar asignaciones personalizadas existentes y modificaciones de DDL.
    2. Haga clic en Extraer instantánea del esquema .

      El Servicio de migración de bases de datos extrae la nueva instantánea de su base de datos de origen.

  4. Actualice su esquema convertido. Haga clic Convertir fuente . El Servicio de migración de bases de datos ahora analiza sus cambios y genera el esquema PostgreSQL actualizado.

    Puedes inspeccionar el esquema convertido en la pestaña borrador de Cloud SQL para PostgreSQL .

Utilice asignaciones de conversión personalizadas

Puede personalizar la lógica de conversión con un archivo de mapeo de conversión . El archivo de mapeo de conversión es un archivo de texto que contiene instrucciones precisas (denominadas directivas de conversión ) sobre cómo deben convertirse sus objetos de Oracle en objetos de PostgreSQL.

Escribir un archivo de mapeo personalizado

Para escribir sus archivos de mapeo personalizados:

  1. Revise la lista de directivas de conversión admitidas .

  2. Utilice el archivo de configuración de ejemplo como punto de referencia.

  3. Escriba sus asignaciones de conversión personalizadas en un editor de texto y cárguelas en el espacio de trabajo de conversión.

Agregar archivos de mapeo personalizados

Para agregar un archivo de asignación de conversión personalizado a su espacio de trabajo, haga lo siguiente:

  1. En el Google Cloud consola, vaya a Espacios de trabajo de conversión y seleccione su espacio de trabajo.

    Ir a espacios de trabajo de conversión

  2. En la página del editor de conversión, seleccione Editar configuración > Personalizar asignación con un archivo de configuración .
  3. En el cuadro Archivo de configuración , haga clic en Examinar y utilice el selector de archivos del sistema para seleccionar su archivo de configuración.
  4. Haga clic en Agregar archivo > Crear asignación .

Eliminar archivos de mapeo personalizados

Para eliminar un archivo de asignación de conversión personalizado de su espacio de trabajo, haga lo siguiente:

  1. En el Google Cloud consola, vaya a Espacios de trabajo de conversión y seleccione su espacio de trabajo.

    Ir a espacios de trabajo de conversión

  2. En la página del editor de conversión, seleccione Editar configuración > Eliminar asignación personalizada .

Revisar los resultados de la conversión

Después de realizar la conversión de origen, puede revisar los resultados de la conversión y los posibles problemas para cada objeto convertido individual en el área del editor del espacio de trabajo. También puede utilizar la CLI de Google Cloud para guardar todos los resultados y problemas de forma masiva en un archivo de texto.

Consola

  1. En el Google Cloud consola, vaya a Espacios de trabajo de conversión .

    Ir a espacios de trabajo de conversión

  2. Haga clic en el nombre para mostrar del espacio de trabajo de conversión con el que desea trabajar.

    Se abre el editor del espacio de trabajo de conversión.

  3. Seleccione la pestaña Oracle y ubique el objeto para el cual desea revisar los resultados de la conversión en la tabla de la vista de árbol.

  4. Seleccione el objeto. Utilice las pestañas SQL y Problemas de conversión para revisar la conversión.

nube de gcloud

Con Google Cloud CLI puede imprimir todos los resultados de conversión o problemas en el terminal. Redirija la salida a un archivo para revisiones masivas de objetos más convenientes.

Obtenga una lista de resultados de conversión

La CLI de gcloud muestra los resultados de la conversión en la terminal en forma de declaraciones del lenguaje de definición de datos (DDL). Para guardar los resultados de la conversión en un archivo, ejecute el siguiente comando:

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

Reemplazar:

  • CONVERSION_WORKSPACE_ID con el identificador del espacio de trabajo de conversión. Para obtener información sobre cómo recuperar identificadores del espacio de trabajo de conversión, consulte Ver detalles del espacio de trabajo de conversión .
  • REGION_ID con el nombre de la región donde se encuentra el espacio de trabajo de conversión.
  • OUTPUT_FILE_PATH con la ruta al archivo de texto donde desea guardar la salida.

    Ejemplo:

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

    Resultado:

    Los resultados de la conversión de su esquema se guardan en un formato de texto donde la primera línea dice DDLs y las líneas siguientes están ocupadas por declaraciones 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;
    

Obtenga una lista de problemas de conversión

Para guardar los problemas de conversión en un archivo, ejecute el siguiente comando:

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

Reemplazar:

  • CONVERSION_WORKSPACE_ID con el identificador del espacio de trabajo de conversión. Para obtener información sobre cómo recuperar identificadores del espacio de trabajo de conversión, consulte Ver detalles del espacio de trabajo de conversión .
  • REGION_ID con el nombre de la región donde se encuentra el espacio de trabajo de conversión.
  • OUTPUT_FILE_PATH con la ruta al archivo de texto donde desea guardar la salida.

Ejemplo:

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

Resultado:

Todos los problemas de conversión contenidos en su espacio de trabajo se guardan en un formato de texto donde la primera línea contiene encabezados de columna y cada línea posterior contiene un problema de conversión independiente:

  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.

Solucionar problemas de conversión

Es posible que el Servicio de migración de bases de datos no pueda convertir automáticamente todo el código fuente. Para la mayoría de los objetos de Oracle, puede utilizar el editor de conversión directamente en el Servicio de migración de bases de datos para ajustar el SQL generado. Para otros, es posible que necesite cambiar el objeto directamente en su base de datos de origen y luego extraer la instantánea de origen nuevamente .

Para obtener una lista completa de los objetos que el Servicio de migración de bases de datos admite para editar directamente en el espacio de trabajo de conversión, consulte Objetos editables de Oracle .

Para solucionar los problemas de conversión encontrados en su esquema, haga lo siguiente:

  1. En el Google Cloud consola, vaya a Espacios de trabajo de conversión y seleccione su espacio de trabajo.

    Ir a espacios de trabajo de conversión

  2. Revise los resultados de la conversión e identifique posibles problemas.

    Puedes usar el Google Cloud console para revisar objetos individuales o CLI de gcloud para revisar todos los objetos de forma masiva.

  3. Dependiendo del tipo de problema, puede solucionarlo directamente en el editor del espacio de trabajo o es posible que deba proporcionar un archivo de asignación de conversión personalizado. Amplíe las siguientes secciones para obtener más información.

    Independientemente del tipo de problema con el que esté trabajando, puede probar el asistente de conversión de Gemini para encontrar una solución. Para obtener más información, consulte Usar el asistente de conversión Gemini .

    Solucionar problemas con objetos compatibles con el editor integrado

    Para solucionar problemas encontrados con objetos compatibles con el editor del espacio de trabajo, haga lo siguiente:

    1. Encuentre su problema en la vista de árbol de Oracle y luego seleccione la pestaña Código .
    2. Utilice el editor SQL para actualizar el código generado. El servicio de migración de bases de datos no valida la exactitud del código SQL que agrega en el editor.

    Solucionar problemas con objetos que no son compatibles con el editor integrado

    Para solucionar problemas encontrados con objetos que no son compatibles con el editor del espacio de trabajo, realice una de las siguientes acciones:

    Actualiza objetos defectuosos en tu fuente
    Para algunos problemas, es posible que necesite cambiar la declaración de Oracle directamente en su base de datos de origen. Haga lo siguiente:
    1. Actualice el esquema y el código directamente en su base de datos fuente.
    2. Extraiga las fuentes actualizadas al Servicio de migración de bases de datos.
    3. Convierta las fuentes nuevamente y verifique si los problemas persisten.
    Proporcionar asignaciones adicionales con un archivo de asignación de conversión

    Puede utilizar un archivo de asignación de conversión para proporcionar definiciones precisas sobre cómo el Servicio de migración de bases de datos debe convertir ciertos objetos PostgreSQL. Para utilizar un archivo de asignación de conversión, haga lo siguiente:

    1. Escriba un archivo de mapeo de conversión .
    2. Agregue su archivo de configuración al espacio de trabajo .
    3. Convierta las fuentes nuevamente y verifique si los problemas persisten.
    Intente eliminar el objeto de la pestaña de fuentes
    El Servicio de migración de bases de datos le permite convertir archivos . Para desbloquear el proceso de conversión, puede decidir mirar más de cerca el objeto defectuoso más adelante. Elimine el objeto de la pestaña de fuentes .
  4. Pruebe su esquema para verificar que el Servicio de migración de bases de datos pueda aplicar correctamente su código a la base de datos de destino.

Pruebe su esquema en el destino

Antes de aplicar el esquema a la base de datos de destino, primero puede realizar una ejecución de prueba para comprobar de forma proactiva posibles problemas. Para realizar la prueba, el Servicio de migración de bases de datos crea una base de datos temporal. La ejecución de prueba no afecta su instancia de Cloud SQL de destino.

  1. Asegúrese de que su usuario de migración dedicado tenga el permiso CREATEDB . Para obtener más información, consulte Crear y configurar su instancia de Cloud SQL de destino .

  2. En el Google Cloud consola, vaya a Espacios de trabajo de conversión .

    Ir a espacios de trabajo de conversión

  3. Haga clic en el nombre para mostrar del espacio de trabajo de conversión con el que desea trabajar.

    Se abre el editor del espacio de trabajo de conversión.

  4. Haga clic en Aplicar al destino > Probar (recomendado) .

    Aparece el asistente para aplicar el esquema a la base de datos de destino.

  5. En la sección Definir destino , seleccione el perfil de conexión que apunta a su base de datos de destino.

  6. Haga clic en Definir y continuar .

  7. En la sección Seleccionar objetos y probar la aplicación , seleccione los esquemas de las entidades de base de datos que desea probar para su base de datos de destino.

    Puede utilizar el botón Filtrar objetos para reducir el número de objetos mostrados. Consulte Filtrar objetos en la vista del esquema de origen .

  8. Haga clic en Probar aplicación .

    Puede revisar el estado de la aplicación en la pestaña Cloud SQL para PostgreSQL .

Aplicar esquema al destino

Cuando el esquema que desea utilizar en la base de datos de destino se convierte de acuerdo con sus requisitos y asignaciones, puede aplicar los resultados a la base de datos de destino. La aplicación del esquema en el destino no altera ningún dato en la base de datos de origen.

  1. En el Google Cloud consola, vaya a Espacios de trabajo de conversión .

    Ir a espacios de trabajo de conversión

  2. Haga clic en el nombre para mostrar del espacio de trabajo de conversión con el que desea trabajar.

    Se abre el editor del espacio de trabajo de conversión.

  3. Haga clic en Aplicar al destino > Aplicar .

    Aparece el asistente para aplicar el esquema a la base de datos de destino.

  4. En la sección Definir destino , seleccione el perfil de conexión que apunta a su base de datos de destino.

  5. Haga clic en Definir y continuar .

  6. En la sección Revisar objetos y aplicar conversión al destino , seleccione los esquemas de entidades de base de datos que desea crear en su base de datos de destino.

    Puede utilizar el botón Filtrar objetos para reducir el número de objetos mostrados. Consulte Filtrar objetos en la vista del esquema de origen .

  7. Haga clic en Aplicar al destino .

    Puede revisar el estado de la aplicación en la pestaña Cloud SQL para PostgreSQL .

Crear un trabajo de migración desde el editor de conversión

Puede crear un trabajo de migración que utilice su espacio de trabajo de conversión directamente desde la interfaz del editor de conversión.

  1. En el Google Cloud consola, vaya a Espacios de trabajo de conversión .

    Ir a espacios de trabajo de conversión

  2. Haga clic en el nombre para mostrar del espacio de trabajo de conversión con el que desea trabajar.

    Se abre el editor del espacio de trabajo de conversión.

  3. Haga clic en Crear trabajo de migración .

  4. Continúe con los pasos estándar del trabajo de migración, como se describe en Crear un trabajo de migración .

Filtrar objetos en la vista del esquema de origen

Los esquemas de bases de datos suelen contener miles de objetos, lo que dificulta el trabajo de conversión de particiones. Cuando agrega objetos de la instantánea del esquema a la vista del esquema de origen, puede usar filtros para limitar la cantidad de objetos mostrados. Los filtros le permiten agregar objetos de una manera más granular y centrarse en convertir un subconjunto seleccionado de su esquema.

Utilice la vista filtrada cuando agregue objetos a la vista del esquema de origen:

  1. En el campo Filtro , utilice uno de los siguientes métodos de filtrado:
  2. En la lista Propiedades , seleccione una de las siguientes opciones sugeridas automáticamente:
    1. Nombre de objeto para filtrar los objetos por nombre, por ejemplo, ADMIN .
    2. Tipo de objeto para filtrar los objetos por varios tipos, como Función o Tabla .
    3. Estado de conversión para filtrar los objetos por estado de conversión, como Acción requerida o Sin problemas .
    4. Aumentado por Gemini para filtrar objetos que se convirtieron con la conversión automática de Gemini .

    Puede combinar propiedades de filtro con operadores lógicos.

  3. Ingrese su consulta. Por ejemplo: type=table .

    Para obtener más información sobre la sintaxis de filtrado, consulte Sintaxis de filtrado admitida .

  4. Seleccione los objetos que desea agregar a la vista del esquema de origen.

Sintaxis de filtrado de texto admitida

Puede filtrar objetos por nombre con una búsqueda básica de texto libre o utilizar una propiedad type dedicada. Ambos enfoques admiten la especificación formal de la API de Google para el filtrado , lo que significa que puede utilizar literales con comodines, así como operadores lógicos y de comparación.

Utilice texto libre para filtrar los objetos por nombre. Este enfoque distingue entre mayúsculas y minúsculas y admite comodines.

Ejemplo :

La consulta *JOB* utiliza comodines para buscar entidades que contengan la subcadena JOB . La vista filtrada devuelve algunas tablas y un procedimiento almacenado:

Captura de pantalla de resultados de ejemplo para filtrar objetos por nombre.
Filtrar usando la propiedad type

Puede filtrar objetos por todos los tipos estándar admitidos en el Servicio de migración de bases de datos.

La propiedad type admite los siguientes literales con los operadores de igualdad ( = ) y desigualdad ( != ): database , schema , table , column , index , sequence , stored_procedure , function , view , synonym , materialized_view , udt , constraint , database_package , trigger y event_trigger .

Ejemplo :

El filtro type=table devuelve solo tablas presentes en su esquema:

Captura de pantalla de resultados de ejemplo para filtrar objetos por tipo de propiedad.
Combinar condiciones de filtrado

Puede especificar varias condiciones combinándolas con operadores lógicos.

Por ejemplo, para buscar exclusivamente tablas cuyos nombres contengan las subcadenas JOB o EMPLOYEE , utilice esta consulta:

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

Como resultado, el filtro muestra todas las tablas coincidentes:

Captura de pantalla de resultados de ejemplo para filtrar objetos mediante una combinación de   propiedades de tipo y nombre.