Carga de datos mediante Oracle Data Pump

Oracle Data Pump ofrece un movimiento masivo muy rápido de datos y metadatos entre las bases de datos de Oracle y la base de datos de IA autónoma en la infraestructura de Exadata dedicada.

Data Pump Import permite importar datos de archivos de pump de datos que residen en Oracle Cloud Infrastructure Object Storage y Oracle Cloud Infrastructure Object Storage Classic. Puede guardar los datos en el almacén de objetos de la nube y utilizar Oracle Data Pump para cargar datos en la base de datos de IA autónoma.

Nota: Si desea una alternativa de "prueba" a la lectura de los siguientes temas, puede realizar el laboratorio 9 sobre una migración con Data Pump en el taller Oracle Autonomous AI Database Dedicated for Fleet Administrators.

Exportación de datos desde la instancia de Oracle Database existente

En primer lugar, utilice Oracle Data Pump Export para exportar los esquemas existentes de Oracle Database. A continuación, utilice Oracle Data Pump Import para migrarlos a la base de datos de IA autónoma.

Oracle recomienda utilizar los siguientes parámetros de Data Pump Export para una migración más rápida y sencilla a la base de datos de IA autónoma:

exclude=cluster, db_link
parallel=n
schemas=schema name
dumpfile=export%l.dmp

Oracle Data Pump Export proporciona varios modos de exportación. Oracle recomienda utilizar el modo del esquema para migrar a la base de datos de IA autónoma. Puede mostrar los esquemas que desea exportar mediante el parámetro schemas.

Para una migración más rápida, exporte los esquemas a varios archivos de Data Pump y utilice el paralelismo. Puede especificar el formato de nombre del archivo del volcado que desea utilizar con el parámetro dumpfile. Defina el parámetro paralelo en al menos el número de CPU que tiene en la base de datos de IA autónoma.

Los parámetros exclude y data_options garantizan que los tipos del objeto no disponibles en la base de datos de IA autónoma no se exportan y que las particiones se agrupan para que se puedan importar más rápidamente a la base de datos de IA autónoma.

Nota: Oracle recomienda recopilar las estadísticas actualizadas antes de ejecutar el comando expdp. El paquete dbms_stats proporciona varios procedimientos para recopilar las estadísticas más recientes. Las estadísticas se agregan automáticamente al archivo de volcado de exportación y ayudan a determinar el tamaño de los objetos y a optimizar el paralelismo durante la importación. Para obtener más información, consulte DBMS_STATS Operational Notes en Oracle Database 19c PL/SQL Packages and Types Reference y Oracle Database 26ai PL/SQL Packages and Types References.

El siguiente ejemplo exporta el esquema de SH de un origen de Oracle Database para su migración a una base de datos de IA autónoma con 16 CPU:

expdp sh/sh@orcl \
exclude=cluster, db_link \
parallel=16 \
schemas=sh \
dumpfile=export%l.dmp \
encryption_pwd_prompt=yes

Notas para los parámetros de pump de datos:

Puede utilizar otros parámetros de Data Pump Export, como compression, según sus necesidades. Para obtener más información, consulte Exportación de Oracle Data Pump en Utilidades de Oracle Database 19c u Utilidades de Oracle Database 26ai.

Carga de archivos de exportación en Cloud Object Storage

Para poder importar los datos que ha exportado desde la instancia de Oracle Database de origen, debe cargar los archivos de exportación en el almacenamiento de objetos en la nube.

Puede cargar los archivos de exportación en un bucket de almacenamiento existente en Oracle Cloud Infrastructure Object Storage o en un contenedor de almacenamiento existente en Oracle Cloud Infrastructure Object Storage Classic. O bien, utilice el siguiente procedimiento para crear un nuevo bucket de almacenamiento y cargar los archivos de exportación en él.

  1. Conéctese a la cuenta de Oracle Cloud en cloud.oracle.com.

  2. En la lista de navegación izquierda de Oracle Cloud Infrastructure, seleccione Almacenamiento de objetos y, a continuación, seleccione Almacenamiento de objetos en la sublista.

  3. Seleccione un compartimento en el que crear el bucket de almacenamiento.

  4. Haga clic en Crear cubo.

  5. En el diálogo Crear cubo, asigne un nombre al cubo y, a continuación, haga clic en Crear cubo.

  6. Después de crear el bucket, haga clic en su nombre en la lista de buckets para mostrar la página Detalles de bucket.

  7. En el cuadro Objetos, haga clic en Cargar objetos.

  8. En el cuadro de diálogo Cargar objetos, haga clic en el enlace Seleccionar archivos del cuadro Seleccionar archivos de su computadora.

  9. En el explorador de archivos, desplácese a los archivos de exportación y selecciónelos. A continuación, haga clic en Abrir.

  10. En el recuadro de diálogo Cargar Objetos, haga clic en Cargar Objetos para iniciar la carga de los archivos que ha seleccionado.

  11. Cuando se hayan completado las cargas, cierre el cuadro de diálogo Cargar objetos.

Importación de datos con Oracle Data Pump

Oracle recomienda utilizar la versión más reciente de Oracle Data Pump para importar datos de archivos de Data Pump en su base de datos de IA autónoma, ya que contiene mejoras y correcciones para una mejor experiencia.

Descargue la versión más reciente del paquete básico de Oracle Instant Client y el paquete de herramientas (que incluye Oracle Data Pump) para su plataforma desde Oracle Instant Client Downloads. Consulte las instrucciones de instalación en la página de descarga de instalación de la plataforma para conocer los pasos de instalación necesarios después de descargar Oracle Instant Client.

En Oracle Data Pump versión 18.3 y posteriores, el argumento credential autentica Data Pump para el servicio de Cloud Object Storage que utilice para los archivos de origen. El argumento dumpfile es una lista delimitada por comas de direcciones URL para los archivos de Data Pump.

Las versiones 12.2.0.1 y anteriores de Data Pump Import no tienen el parámetro credential. Si utiliza una versión anterior de Data Pump Import, debe definir una propiedad del credencial por defecto para Autonomous AI Database y utilizar la palabra clave de default_credential en el parámetro dumpfile.

En Oracle Data Pump, si los archivos de origen residen en Oracle Cloud Infrastructure Object Storage, puede utilizar el URI nativo de Oracle Cloud Infrastructure o los URI de Swift. Consulte Formatos de URI de almacenamiento de objetos en la nube para obtener más información sobre estos formatos de URI.

  1. Almacene la credencial de Cloud Object Storage mediante el procedimiento DBMS_CLOUD.CREATE_CREDENTIAL.

    La importación de pump de datos soporta credenciales basadas en token de autenticación de Oracle Cloud Infrastructure y credenciales basadas en clave de firma de Oracle Cloud Infrastructure.

    Ejemplo 1: para crear credenciales de token de autenticación de Oracle Cloud Infrastructure:

     BEGIN
     DBMS_CLOUD.CREATE_CREDENTIAL(
       credential_name => 'DEF_CRED_NAME',
       username => 'adb_user@oracle.com',
       password => '*password*'
       );
     END;
     /
    

    Ejemplo 2: para crear credenciales basadas en clave de firma de Oracle Cloud Infrastructure:

     BEGIN
       DBMS_CLOUD.CREATE_CREDENTIAL (
         credential_name => 'DEF_CRED_NAME',
         user_ocid       => 'ocid1.user.oc1..unique_ID',
         tenancy_ocid    => 'ocid1.tenancy.oc1..unique_ID',
         private_key     => 'MIIEogIBAAKCAQEAtUnxbmre.....wtnNpESQQQ0QLGPD8NM//JEBg=',
         fingerprint     => 'fingerprint value'
       );
     END;
     /
    

    Para obtener más información sobre los tipos de credenciales para Oracle Cloud Infrastructure Cloud Object Storage, consulte el procedimiento CREATE_CREDENTIAL.

  2. If you are using Oracle Data Pump version 12.2.0.1 or earlier, you must set the credential as the default credential for your Autonomous AI Database, as the ADMIN user. Por ejemplo:

     alter database property set default_credential = 'ADMIN.DEF_CRED_NAME'
    
  3. Ejecute Data Pump Import con el parámetro dumpfile definido en la lista de URL de archivo de Cloud Object Storage.

    • Oracle Data Pump versión 18.3 o posterior: defina el parámetro credential en los nombres de la credencial que ha creado en la etapa 1. Por ejemplo:

      impdp admin/password@ATPC1_high \
        credential=def_cred_name \
        dumpfile= https://namespace-string.objectstorage.us-ashburn-1.oci.customer-oci.com/n/namespace-string/b/bucketname/o/export%l.dmp \ 
        parallel=16 \
        transform=segment_attributes:n \
        exclude=cluster, db_link
      

      En este ejemplo, dumpfile es un URI Swift de Oracle Cloud Infrastructure que especifica todos los archivos cuyo nombre coincide con export<number>.dmp en el cubo mybucket de la región us-phoenix-1. (idthydc0kinr es el espacio de nombres de almacenamiento de datos en el que residen el cubo).

    • Oracle Data Pump versión 12.2.0.1 o anterior: inicie el valor del parámetro dumpfile con la palabra clave de default_credential y los dos puntos. Por ejemplo:

      impdp admin/password@ATPC1_high \
        dumpfile=default_credential:https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/idthydc0kinr/mybucket/export%l.dmp \
        parallel=16 \      
        transform=segment_attributes:n \      
        exclude=cluster, db_link
      

    Notas para la importación de pump de datos

    • Si durante la exportación con expdp utiliza el parámetro encryption_pwd_prompt=yes, utilice encryption_pwd_prompt=yes e introduzca la misma contraseña en la petición de datos impdp que ha especificado durante la exportación.

    • El parámetro dumpfile soporta los comodines %L y %l, además de los comodines %U y %u heredados. Por ejemplo, dumpfile=export%L.dmp.

      Utilice el comodín %L o %l para las exportaciones de Oracle Database versión 12.2 y posteriores. Este comodín amplía el nombre del archivo de volcado a un entero que aumenta el ancho variable de 3 dígitos a 10 dígitos, comenzando en 100 y terminando en 2147483646.

      Utilice el comodín heredado %U o %u para las exportaciones de Oracle Database anteriores a la versión 12.2. Si utiliza esta opción y se necesitan más de 99 archivos de volcado, debe especificar varios nombres de archivo de volcado, cada uno con el parámetro %U o %u.

    • Para obtener el mejor rendimiento de importación, utilice el servicio de base de datos high para la conexión de importación y defina el parámetro parallel en el número de CPU que tiene la base de datos.

    • Para obtener el formato de URL de archivo de volcado para diferentes servicios de Cloud Object Storage, consulte Formatos de URI de almacenamiento de objetos en la nube.

    • Para realizar una importación completa o importar objetos que sean propiedad de otros usuarios, necesita el rol DATAPUMP_CLOUD_IMP.

    Para obtener información sobre los objetos que no se permiten en la base de datos de IA autónoma, consulte Limitaciones sobre el uso de comandos SQL.

    Para obtener información detallada sobre los parámetros de importación, consulte Importación de Oracle Data Pump en Utilidades de Oracle Database 19c u Utilidades de Oracle Database 26ai.

Acceso a los archivos log para la importación de Data Pump

Los archivos log para las operaciones de importación de pump de datos se almacenan en el directorio que especifique con el parámetro impdp directory del pump de datos.

Para acceder al archivo log, debe mover el archivo log a Cloud Object Storage mediante el procedimiento DBMS_CLOUD.PUT_OBJECT. Por ejemplo, el siguiente bloque PL/SQL mueve el archivo import.log al almacenamiento de objetos en la nube:

BEGIN
  DBMS_CLOUD.PUT_OBJECT(
    credential_name => 'DEF_CRED_NAME',
    object_uri => 'https://objectstorage.us-ashburn-1.oraclecloud.com/n/*namespace-string*/b/*bucketname*/o/import.log',
    directory_name  => 'DATA_PUMP_DIR',
    file_name => 'import.log');
END;
/

En este ejemplo, *namespace-string* es el espacio y bucketname es el nombre del cubo de Oracle Cloud Infrastructure. Consulte Descripción de los espacios de nombres de Object Storage para obtener más información.

Para obtener más información, consulte DBMS_CLOUD para objetos y archivos.

Contenido relacionado