Usar o Oracle Data Pump para Exportar Dados para o Armazenamento de Objetos Usando o Parâmetro CREDENTIAL (Versão 19.9 ou Mais Recente)

Mostra as etapas para exportar dados do seu Autonomous Database para o Cloud Object Storage com o Oracle Data Pump Export usando o parâmetro 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 Download do Oracle Instant Client.

Se você estiver usando o Oracle Data Pump Versão 19.9 ou mais recente, poderá usar o parâmetro credential conforme mostrado nestas etapas. Para obter instruções sobre como usar o Oracle Data Pump Versões 19.8 e anteriores, consulte Usar a Propriedade DEFAULT_CREDENTIAL de Definição do Oracle Data Pump para Exportar Dados para o Armazenamento de Objetos.

  1. Estabeleça conexão com o banco de dados.
  2. Armazene a 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 Procedimento para obter mais informações.

  3. Execute o Data Pump Export com o parâmetro dumpfile definido com o URL de um bucket existente no Cloud Object Storage, terminando com um nome de arquivo ou um nome de arquivo com uma variável de substituição, como exp%L.dmp, e com o parâmetro credential definido com o nome da credencial criada na etapa anterior. Por exemplo:
    expdp admin/password@db2022adb_high \
         filesize=5GB \
         credential=def_cred_name \
         dumpfile=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 sobre os parâmetros do Oracle Data Pump:

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

    • O parâmetro dumpfile suporta os curingas %L e %l, além dos curingas legados %U e %u. Por exemplo, dumpfile=export%L.dmp. Use o curinga %L ou %l para exportações do Oracle Database Release 12.2 e posterior. Este curinga expande o nome do arquivo de dump em um inteiro de incremento de largura variável de 3 dígitos para 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), em que 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 o realm comercial (OC1). namespace-string é o namespace do armazenamento de objetos do Oracle Cloud Infrastructure e bucketname é o nome do bucket. Para obter mais informações, 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.

    O parâmetro credential não pode ser um controlador de recursos do OCI, um controlador de serviços do Azure, um ARN (Amazon Resource Name) ou uma conta de serviço do Google. Consulte Acessando Recursos da Nuvem Configurando Políticas e Atribuições para obter mais informações sobre autenticação baseada no controlador de recursos.

    Para obter o melhor desempenho de exportação, use o serviço de banco de dados HIGH para sua conexão de 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 OCPU, defina o parâmetro paralelo com o número de OCPUs (1 x contagem de OCPUs).

    Para obter informações sobre com qual nome do serviço de banco de dados estabelecer conexão para executar o Data Pump Export, consulte Nomes de Serviço de Banco de Dados para o Autonomous Database.

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

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

    • O valor máximo do parâmetro filesize é 100000 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 Arquivos de Log de Acesso do Data Pump Export 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ó será necessário fornecer o nome do arquivo principal. Os procedimentos que suportam o tipo de formato 'datapump' descobrem e fazem download automaticamente dos chunks.

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

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