Criar Credenciais e Carregar Arquivos de Dump do Data Pump para uma Tabela Existente
Para carregamento de dados, você também pode usar os arquivos de dump do Oracle Data Pump como arquivos de origem.
Os arquivos de origem deste tipo de carga devem ser exportados do sistema de origem usando o driver de acesso ORACLE_DATAPUMP nas Tabelas Externas. Consulte Unloading and Loading Data with the ORACLE_DATAPUMP Access Driver para obter detalhes sobre como exportar usando o driver de acesso ORACLE_DATAPUMP.
Para carregar os dados, primeiro mova os arquivos de dump que foram exportados usando o driver de acesso ORACLE_DATAPUMP para o Object Store e, em seguida, use DBMS_CLOUD.COPY_DATA para carregar os arquivos de dump para uma tabela existente no seu banco de dados.
Os arquivos de origem neste exemplo são os arquivos de dump do Oracle Data Pump, exp 01.dmp e exp02.dmp.
-
Armazene suas credenciais do armazenamento de objetos usando o procedimento
DBMS_CLOUD.CREATE_CREDENTIAL. Por exemplo:SET DEFINE OFF BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => 'DEF_CRED_NAME', username => 'adb_user@example.com', password => 'password' ); END; /Esta operação armazena as credenciais no banco de dados em um formato criptografado. Você pode usar qualquer nome para o nome da credencial. Observe que essa etapa só é necessária uma vez, a menos que suas credenciais do armazenamento de objetos sejam alteradas. Depois de armazenar as credenciais, você poderá usar o mesmo nome de credencial para todos os carregamentos de dados.
Para obter informações detalhadas sobre os parâmetros, consulte Procedimento CREATE_CREDENTIAL.
Observação
Observação: Algumas ferramentas, como o SQL*Plus e o SQL Developer, usam o caractere E comercial (&) como um caractere especial. Se você tiver o caractere E comercial em sua senha, use o comandoSET DEFINE OFFnessas ferramentas, conforme mostrado no exemplo, para desativar o caractere especial e obter a credencial criada corretamente. -
Carregue dados em uma tabela existente usando o procedimento
DBMS_CLOUD.COPY_DATA. Por exemplo:CREATE TABLE CHANNELS (channel_id CHAR(1), channel_desc VARCHAR2(20), channel_class VARCHAR2(20) ); / BEGIN DBMS_CLOUD.COPY_DATA( table_name =>'CHANNELS', credential_name =>'DEF_CRED_NAME', file_uri_list =>'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/exp01.dmp, https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/exp02.dmp', format => json_object('type' value 'datapump') ); END; /Os parâmetros são:
-
table_name: é o nome da tabela de destino. -
credential_name: é o nome da credencial criada na etapa anterior. O parâmetrocredential_namedeve estar de acordo com as convenções de nomeação de objetos da Oracle. Consulte Regras de Nomeação de Objeto de Banco de Dados para obter mais informações. -
file_uri_list: é uma lista delimitada por vírgulas dos arquivos de dump do Data Pump que você deseja carregar. -
format: define as opções que você pode especificar para descrever o formato do arquivo de origem. Quando você especificatypecomo'datapump', o único outro parâmetro de formato válido é'rejectlimit'.
Neste exemplo,
namespace-stringé o namespace do Oracle Cloud Infrastructure Object Storage ebucketnameé o nome do bucket. Consulte Noções Básicas de Namespaces do serviço Object Storage para obter mais informações.Para obter informações detalhadas sobre os parâmetros, consulte Procedimento COBY_DATA e Procedimento COBY_DATA para Arquivos Avro, ORC ou Parquet.
-