DB - Data Pump Export

  • View
    549

  • Download
    0

Embed Size (px)

Text of DB - Data Pump Export

13 de novembro de 2010 [

Data pump]

No Oracle 10g voc pode usar um utilitrio de movimentao de dados chamado Data Pump para aumentar o desempenho no transporte de dados, pois o mesmo 60% mais rpido do que os utilitrios de export e import que ainda esto disponveis no 10g. O Data Pump utiliza recursos de processamento paralelos no transporte de dados e pode ler arquivos de exportao criados pelo utilitrio export. Ele emprega a Tecnologia DIRECT PATH para carregar ou exportar dados. Diferentemente dos programas Import e Export que funciona no lado cliente de uma sesso do banco de dados, o Data Pump executa no servidor. Assim, voc deve usar um diretrio de banco de dados para especificar a localizao de arquivos de Dump e Log. O Data Pump pode ser chamado da linha de comando com os programas IMPDB e EXPDP ou atravs do PACKAGE DBMS_DATAPUMP. Voc pode pedir ao expdp uma lista completa de parmetros, especificando o parmetro help=y. Parmetros Full=y Schemas=schema_list Tables=tables_list Content=content_option Network_link=db_link Dumpfile=dir:file Descrio Modo de exportao de banco de dados Especifica exportao em modo schema Exportao em Modo Tabela Indica quando dados ou metadados sero exportados default ALL Especifica um Banco de Dados Remoto com a origem de dados Nome do Arquivo Dump, Se o nome do Arquivo contiver %U ,este ser substitudo por dois dgitos . Tamanho mximo do arquivo Dump e Log Localizao e nome do Arquivo de Log Localizao para Arquivo Dump e Log Indica que no ser gravado um arquivo de log. Especifica um nome que pode ser utilizado por um job de importao Nmero mximo de processos de palalelismo. Localizao e nome do arquivo de Parmetros

Filesize=size_limit Logfile=dir:file Directory=dir Nologfile=y Job_name=identifier Parallel=degree Parfile=dir:file

1

13 de novembro de 2010 [

Data pump]

Utilizando o Data Pump para Exportar dados Voc inicia uma exportao via Data Pump executando o Programa EXPDP ou executando um Programa PL/SQL que chama a procedure DBMS_DATAPUMP.O Enterprise Manager Tambm fornece uma interface grfica para a execuo do Data Pump. Aprenderemos agora como Exporta dados utilizando a linha de comando com o Data Pump. O programa de exportao do Data Pump pode funcionar de vrios modos, incluindo banco de dados, Schema, Tabela, Tablespace. Em uma exportao de modo de banco de dados, o banco de dados inteiro exportado para arquivo de sistema operacional incluindo contas de usurios, sinnimos pblicos, roles e profiles. Em uma exportao de modo schema, todos os dados e metadados de uma lista de schema so exportados. No modo de tabela, inclui os dados e metadados de uma lista de tabelas no modo tablespace, extrai tanto dados como metadados de todos os objetos em uma lista de tablespace bem como qualquer objeto dependente daquela lista de tablespaces especificada. Os arquivos criados pelo Data Pump so chamados de DUMP FILES, um ou vrios desses arquivos podem ser criados durante uma nica execuo do Data Pump. Mltiplos arquivos podem ser criados se a execuo do Data Pump tiver um grau de paralelismo maior que um ou se um arquivo exceder o tamanho limite do parmetro FILISEZE. Todos os arquivos de dump de uma execuo so chamados de dump file set. Veremos agora como executar o data pump em seus diferentes modos de exportao. Entre com o usurio system, d o privilgio create any directory para criar o diretrio onde ser guardado o dump file Conn system/password@orcl Create or replace directory teste_dir as E:\teste_dir; Grant read, write on directory teste_dir to scott;

2

Fazendo o export de tabelas com expdp Expdp scott/ti er@orcl tables=emp,dept directory=teste_dir Dumpfile=emp_dept dmp logfile=expdppemp_dept log nologfile =y content=metadata_only

13 e

ve

e 2010 [

Data pump]

3

O parmetro nologfile=y diz ao DATA PUMP para no gravar um arquivo de log em disco. O parmetro content=metadata_only diz ao DATA PUMP para exportar s os metadados, no os dados das tabelas. Para especificar somente dados, sem metadados, substitua o parmetro metadata_only por data_only. O parmetro tables_exists_action=append permite importar dados para uma tabela que j tem dados . Fazendo o export de schemas com expdp Expdp system/oracle@orcl schemas=scott directory=teste_dir dumpfile=scott.dmp logfile=impdpscott.log

13 de nove

o de 2010 [

Data pump]

4

Fazendo o exporte do Banco de Dados com expdp Expdp system/password@orcl full=y directory=teste_dir dumpfile=db10g.dmp logfile=impdpdb10g.log

13 de nove

o de 2010 [

Data pump]

5

Fazendo o exporte das tablespaces Expdp system/password@orcl directory=teste_dir dumpfile=db10tabelspace.dmp logfile=exptbs10g.log tablespaces=users

13 de nove

o de 2010 [

Data pump]

6

13 de novembro de 2010 [

Data pump]

Para monitorar as operaes realizadas pelo Data Pump, consulte as views: Dba_datapump_jobs Dba_datapump_sessions Datapump_paths

7

13 de novembro de 2010 [

Data pump]

Uma importao com o Data Pump pode ser iniciada com um programa PL/SQL, utilizando a procedure DBMS_DATAPUMP ou pelo Oracle Enterprise Manager. Veremos como importar dados com o Data Pump. Executando uma importao utilizando a linha de comando O programa de importao DATA PUMP, impdp, tem vrios modos de operao, incluindo FULL, SCHEMA, TABLE, TABLESPACE. No modo FULL, o contedo inteiro de um conjunto de arquivos especificado carregado. Modo SCHEMA, todo o contedo de uma lista de esquemas especificados carregado. O conjunto de arquivos especificado de uma importao no modo SCHEMA pode ser de banco de dados ou de uma exportao de modo TABLE, no modo TABLE, s a Tabela especificada e os objetos dependentes so carregadas do conjunto de arquivos de exportao. Com uma importao no modo TABLESPACE, todos os objetos no conjunto de exportao que estiverem na lista de tablespace especificada so carregados. Em todos estes modos, a origem pode ser um banco de dados, ao invs de um conjunto de arquivo. A tabela abaixo mostra os modelos de importao suportados por diversos modos de exportao.

Modo de Exportao Database, Schema, Tabela, Tablespace. Database, Schema Database, Schema, Tabela, Tablespace. Database, Schema, Tabela, Tablespace.

Modo de Importao Full Schema Tabela Tablespace

A Role IMP_FULL_DATABASE requerida se a origem for um banco de dados ou se a sesso de exportao exigir a role EXP_FULL_DATABASE.Vrios parmetros controlam Data Pump na importao. Esses parmetros so listados na Tabela Digite: help = y

8

13 de novembro de 2010 [

Data pump]Especifica uma Importao full Especifica uma importao no modo Schema Especifica importao no modo Table Especifica importao no modo Tablespace Indica que sero carregados dados, metadados ou ambos Indica que o banco de dados especificado no Database link ser utilizado como origem de dados Localizao e o nome do arquivo de dump Localizao e o nome do arquivo de log Diretrio para localizar os arquivos de Dump e Log No grava arquivos de log Especifica um arquivo para gravar comandos DDL Nome para tarefa de import Nmero mximo de processos para importao Localizao dos arquivos de Parmetro Indica se arquivos devero ser sobrepostos com o camando: Create Tablespace

Parmetros de Importao do Data Pump Full=Y Schema Tables=tabela_list Tablespace=tablespace_list Content=cont_option Network_link=db_link

Dumpfile=dir:arq Logfile= Directory=dir Nologfile=y Sqlfile= Job_name=identifier Parallel Parfile= Reuse_datafiles=option

Remap_datafiles=source:target Indica como renomear arquivos de dados Remap_schema Remap_tablespace Include exclude Determina a carga de um schema Instruo para fazer Remap de tablespace Determina que tipo de objeto sero includos na importao Determina que tipo de objeto sero excludos na importao

9

13 de novembro de 2010 [

Data pump]Permitem o carregamento da ao do metadata Exemplos de objetos importados Metadata transformam para aplicar-se aos objetos aplicveis. Vlido transforme keywords Passa os datafiles a serem importados verificam segmentos do armazenamento de todas as tabelas Determina a tablespace a ser importada

Status Streams_configuration Table_exists_action Transform

Transport_datafile Transport_full_check Transport_tablespace

10

Exemplo da utilizao do Importe do Data Pump Fazendo o import de tabelas com impdp Imp scott/tiger tables=emp,dept directory=teste_dir dumpfile=emp_dept.dmp logfile=impdpemp.log

Fazendo import de schemas com impdp Impdp system/password schemas=scott directory=teste_dir dumpfile=scott.dmp logfile=impdpscott.log

13 de nove

o de 2010 [

Data pump]

11

Fazendo o import full do Banco de Dados com impdp impdp system/passwordl full=y directory=teste_dir dumpfile=db10g.dmp logfile=impdpdb10g.log

Obs.: Na imagem, esto aparecendo algumas mensagens de erro. Estas mensagens so devidas a exist ncia de algumas tablespaces e esquemas. Fazendo o import tablespaces Voc usa Tablespaces transport vel quando voc quer mover um tablespace inteiro dos dados de uma base de dados do Oracle para outra. Tablespaces transport vel permite que os arquivos de dados do Oracle sejam desconectados de uma base de dados, movidos ou copiados a uma outra posio, e plugged ento em uma outra base de dados. Os dados movidos que usam Tablespaces transport vel podem ser muito mais rpidos do que executando uma exportao ou a importao dos mesmos dados, porque transportar um tablespace requer somente a cpia dos datafiles e integrar a informao do dicionrio do tablespace. Mesmo ao transportar um tablespace, a exportao e a importao so usadas e ainda segurar a extrao e a recreao do metadata para esse tablespace.

13 de nove

o de 2010 [

Data pump]

12