Usar o Oracle Data Pump para Exportar Dados para a Propriedade DEFAULT_CREDENTIAL de Definição do Armazenamento de Objetos

Mostra as etapas para exportar dados do seu Autonomous Database para o Cloud Object Storage com o Oracle Data Pump Export e definir a propriedade DEFAULT_CREDENTIAL.

A Oracle recomenda o uso da versão mais recente do Oracle Data Pump para exportar dados do Autonomous Database para outros bancos de dados Oracle, uma vez que eles contêm aprimoramentos e correções para proporcionar uma melhor experiência. Faça download da versão mais recente do Oracle Instant Client e faça download do Pacote de Ferramentas, que inclui o Oracle Data Pump, para sua plataforma em Downloads do Oracle Instant Client. Consulte as instruções de instalação na página de download de instalação da plataforma para obter as etapas de instalação necessárias depois de fazer download do Oracle Instant Client e do Pacote de Ferramentas.

Observação

O Database Actions fornece um link para o Oracle Instant Client. Para acessar esse link no Database Actions, em Downloads, clique em Fazer Download do Oracle Instant Client.
  1. Estabeleça conexão com o seu Autonomous Database.
  2. Armazene a sua credencial do Cloud Object Storage usando DBMS_CLOUD.CREATE_CREDENTIAL. Por exemplo:
    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name => 'DEF_CRED_NAME',
        username => 'user1@example.com',
        password => 'password'
      );
    END;
    /

    Os valores fornecidos para username e password dependem do serviço de Cloud Object Storage que você está usando.

    Se você estiver exportando para o Oracle Cloud Infrastructure Object Storage, poderá usar os URIs nativos do Oracle Cloud Infrastructure ou URIs Swift, mas as credenciais deverão ser tokens de autenticação. Consulte CREATE_CREDENTIAL Procedures para obter mais informações.

  3. Como usuário ADMIN, defina a credencial definida na etapa 2 como a credencial padrão do seu banco de dados. Por exemplo:
    ALTER DATABASE PROPERTY SET DEFAULT_CREDENTIAL = 'ADMIN.DEF_CRED_NAME'

    O valor DEFAULT_CREDENTIAL não pode ser um controlador de recursos do OCI, um controlador de serviços do Azure, um Amazon Resource Name (ARN) ou uma conta de serviço do Google. Consulte Configurar Políticas e Atribuições para Acessar Recursos para obter mais informações sobre autenticação baseada em controlador de recursos.

  4. Execute a Exportação do Data Pump com o parâmetro dumpfile definido para o URL de um bucket existente no Cloud Object Storage (finalizando com um nome ou um nome do arquivo com uma variável de substituição, como exp%L.dmp). Por exemplo:
    expdp admin/password@db2022adb_high \
         filesize=5GB \
         dumpfile=default_credential:https://namespace-string.objectstorage.us-ashburn-1.oci.customer-oci.com/n/namespace-string/b/bucketname/o/exp%L.dmp \
         parallel=16 \
         encryption_pwd_prompt=yes \
         logfile=export.log \
         directory=data_pump_dir
    

    Observações para parâmetros do Data Pump:

    • Se durante a exportação com expdp você usou o parâmetro encryption_pwd_prompt=yes, use encryption_pwd_prompt=yes e digite a mesma senha no prompt impdp que você especificou durante a exportação.

    • O parâmetro dumpfile suporta os caracteres curinga %L e %l, além dos caracteres curinga %U e %u legados. Por exemplo, dumpfile=export%L.dmp. Use o caractere curinga %L ou %l para exportações do Oracle Database Release 12.2 e superior. Este curinga expande o nome do arquivo de dump em um inteiro de incremento de largura variável de 3 dígitos a 10 dígitos, começando em 100 e terminando em 2147483646.

    • Se seu bucket e seus dados não residirem em um realm comercial (OC1), no qual os Pontos Finais Dedicados do OCI não são suportados, use o seguinte formato de URI para dumpfile:

      https://objectstorage.region.oraclecloud.com/n/namespace-string/b/bucketname/o/filename
    Para dumpfile, este exemplo usa o formato de URI recomendado usando Pontos Finais Dedicados do OCI para realm comercial (OC1). O namespace-string é o namespace do Oracle Cloud Infrastructure Object Storage e bucketname é o nome do bucket. Consulte Pontos Finais Dedicados do Serviço Object Storage, Regiões e Domínios de Disponibilidade e Noções Básicas de Namespaces do Serviço Object Storage para obter mais informações.

    A palavra-chave default_credential no parâmetro dumpfile é obrigatória.

    Para obter o melhor desempenho de exportação, use o serviço de banco de dados HIGH para sua conexão com a exportação e defina o parâmetro parallel como um quarto do número de ECPUs (.25 x contagem de ECPUs). Se você estiver usando o modelo de computação de OCPU, defina o parâmetro paralelo como o número de OCPUs (1 x contagem de OCPUs).

    Para obter informações sobre qual nome de serviço de banco de dados estabelecer conexão para executar a Exportação do Data Pump, consulte Gerenciar Simultaneidade e Prioridades no Autonomous Database.

    Para obter o formato do URL de arquivo para diferentes serviços do Cloud Object Storage, consulte Formatos do URI DBMS_CLOUD.

    Este exemplo mostra os parâmetros recomendados para exportação do Autonomous Database. Para esses parâmetros do expdp, observe o seguinte:

    • O valor máximo do parâmetro filesize é 10000 MB para exportações do Oracle Cloud Infrastructure Object Storage.

    • O valor máximo do parâmetro filesize é 20 GB para exportações do Oracle Cloud Infrastructure Object Storage Classic.

    • Se o filesize especificado for muito grande, a exportação mostrará a mensagem de erro:

      ORA-17500: ODM err:ODM HTTP Request Entity Too Large
    • O parâmetro directory especifica o diretório data_pump_dir para o arquivo de log especificado, export.log. Consulte Acessar Arquivos de Log para Exportação do Data Pump para obter mais informações.

    O Oracle Data Pump divide cada parte do arquivo de dump em chunks menores para a obtenção de uploads mais rápidos. A console do Oracle Cloud Infrastructure Object Storage mostra vários arquivos para cada parte do arquivo de dump que você exporta. O tamanho dos arquivos de dump reais será exibido como 0 (zero) e seus chunks de arquivos relacionados como 10 MB ou menos. Por exemplo:

    exp100.dmp
    exp100.dmp_aaaaaa
    exp101.dmp
    exp101.dmp_aaaaaa

    O download do arquivo de dump de zero byte na console do Oracle Cloud Infrastructure ou usando a CLI do Oracle Cloud Infrastructure não fornecerá a você os arquivos de dump completos. Para fazer download dos arquivos de dump completos do Object Store, use uma ferramenta que suporte Swift, como curl, e forneça seu log-in de usuário e token de autenticação Swift. Por exemplo:

    curl -O -v -X GET -u 'user1@example.com:auth_token' \
       https://swiftobjectstorage.us-ashburn-1.oraclecloud.com/v1/namespace-string/bucketname/exp100.dmp

    Se você importar um arquivo com os procedimentos DBMS_CLOUD que suportam o parâmetro format type com o valor 'datapump', só precisará fornecer o nome do arquivo principal. Os procedimentos que suportam o tipo do formato 'datapump' descobrem e baixam automaticamente os chunks.

    Quando você usa DBMS_CLOUD.DELETE_OBJECT, o procedimento descobre e exclui automaticamente os chunks quando o procedimento exclui o arquivo principal.

  5. Execute as etapas necessárias para usar a importação e a limpeza do Oracle Data Pump.
Observação

Para executar uma exportação completa ou para exportar objetos pertencentes a outros usuários, você precisa da atribuição DATAPUMP_CLOUD_EXP.

Para obter informações detalhadas sobre os parâmetros de exportação do Oracle Data Pump, consulte Oracle Database Utilities.