Você está na página 1de 13

13 de novembro de 2010 [ Data pump]

No Oracle 10g você pode usar um utilitário de movimentação de dados chamado Data
Pump para aumentar o desempenho no transporte de dados, pois o mesmo é 60% mais
rápido do que os utilitários de export e import que ainda estão disponíveis no 10g.

O Data Pump utiliza recursos de processamento paralelos no transporte de dados e pode


ler arquivos de exportação criados pelo utilitário 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 sessão do banco de dados, o Data Pump
executa no servidor. Assim, você deve usar um diretório de banco de dados para
especificar a localização de arquivos de Dump e Log.

O Data Pump pode ser chamado da linha de comando com os programas IMPDB e
EXPDP ou através do PACKAGE DBMS_DATAPUMP. Você pode pedir ao expdp
uma lista completa de parâmetros, especificando o parâmetro help=y.

Parâmetros Descrição

Full=y Modo de exportação de banco de dados

Schemas=schema_list Especifica exportação em modo schema

Tables=tables_list Exportação em Modo Tabela

Content=content_option Indica quando dados ou metadados serão


exportados default ALL

Network_link=db_link Especifica um Banco de Dados Remoto com a


origem de dados

Dumpfile=dir:file Nome do Arquivo Dump, Se o nome do


Arquivo contiver %U ,este será substituído por
dois dígitos .

Filesize=size_limit Tamanho máximo do arquivo Dump e Log

Logfile=dir:file Localização e nome do Arquivo de Log

Directory=dir Localização para Arquivo Dump e Log

Nologfile=y Indica que não será gravado um arquivo de


log.

Job_name=identifier Especifica um nome que pode ser utilizado por


um job de importação

Parallel=degree Número máximo de processos de palalelismo.

Parfile=dir:file Localização e nome do arquivo de Parâmetros


13 de novembro de 2010 [ Data pump]
Utilizando o Data Pump para Exportar dados

Você inicia uma exportação via Data Pump executando o Programa EXPDP ou
executando um Programa PL/SQL que chama a procedure DBMS_DATAPUMP.O 
Enterprise Manager Também fornece uma interface gráfica para a execução do Data
Pump.

Aprenderemos agora como Exporta dados utilizando a linha de comando com o Data
Pump.

O programa de exportação do Data Pump pode funcionar de vários modos, incluindo


banco de dados, Schema, Tabela, Tablespace. Em uma exportação de modo de banco de
dados, o banco de dados inteiro é exportado para arquivo de sistema operacional
incluindo contas de usuários, sinônimos públicos, roles e profiles.

Em uma exportação de modo schema, todos os dados e metadados de uma lista de


schema são 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 são chamados de DUMP FILES, um ou vários
desses arquivos podem ser criados durante uma única execução do Data Pump.
Múltiplos arquivos podem ser criados se a execução do Data Pump tiver um grau de
paralelismo maior que um ou se um arquivo exceder o tamanho limite do parâmetro
FILISEZE. Todos os arquivos de dump de uma execução são chamados de dump file
set.

Veremos agora como executar o data pump em seus diferentes modos de exportação.

Entre com o usuário system, dê o privilégio create any directory para criar o diretório
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;


13 de novembro de 2010 [ Data pump]

Fazendo o export de tabelas com expdp

Expdp  scott/tiger@orcl  tables=emp,dept directory=teste_dir 


Dumpfile=emp_dept.dmp  logfile=expdppemp_dept.log  nologfile =y
content=metadata_only
13 de novembro de 2010 [ Data pump]
O parâmetro nologfile=y diz ao DATA PUMP para não gravar um arquivo de log em
disco. O parâmetro content=metadata_only diz ao DATA PUMP para exportar só os
metadados, não os dados das tabelas. Para especificar somente dados, sem metadados,
substitua o parâmetro metadata_only por data_only.

O parâmetro 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 novembro de 2010 [ Data pump]
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 novembro de 2010 [ Data pump]

Fazendo o exporte das tablespaces

Expdp system/password@orcl directory=teste_dir dumpfile=db10tabelspace.dmp


logfile=exptbs10g.log tablespaces=users
13 de novembro de 2010 [ Data pump]

Para monitorar as operações realizadas pelo Data Pump, consulte as views:

Dba_datapump_jobs
Dba_datapump_sessions
Datapump_paths
13 de novembro de 2010 [ Data pump]

Uma importação 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 importação utilizando a linha de comando

O programa de importação DATA PUMP, impdp, tem vários modos de operação,


incluindo FULL, SCHEMA, TABLE, TABLESPACE. No modo FULL, o conteúdo
inteiro de um conjunto de arquivos especificado é carregado. Modo SCHEMA, todo o
conteúdo de uma lista de esquemas especificados é carregado. O conjunto de arquivos
especificado de uma importação no modo SCHEMA pode ser de banco de dados ou de
uma exportação de modo TABLE, no modo TABLE, só a Tabela especificada e os
objetos dependentes são carregadas do conjunto de arquivos de exportação. Com uma
importação no modo TABLESPACE, todos os objetos no conjunto de exportação que
estiverem na lista de tablespace especificada são carregados.

Em todos estes modos, a origem pode ser um banco de dados, ao invés de um conjunto
de arquivo. A tabela abaixo mostra os modelos de importação suportados por diversos
modos de exportação.

Modo de Exportação Modo de Importação


Database, Schema, Tabela, Full
Tablespace.
Database, Schema Schema
Database, Schema, Tabela, Tabela
Tablespace.
Database, Schema, Tabela, Tablespace
Tablespace.

A Role IMP_FULL_DATABASE é requerida se a origem for um banco de dados ou se


a sessão de exportação exigir a role EXP_FULL_DATABASE.Vários parâmetros 
controlam Data Pump  na importação. Esses parâmetros são listados na Tabela

Digite: help = y
13 de novembro de 2010 [ Data pump]

Parâmetros de Importação do Data Pump

Full=Y Especifica uma Importação full


Schema Especifica uma importação no modo
Schema
Tables=tabela_list Especifica importação no modo Table
Tablespace=tablespace_list Especifica importação no modo
Tablespace
Content=cont_option Indica que serão carregados dados,
metadados ou ambos
Network_link=db_link Indica que o banco de dados especificado
no Database link será utilizado como
origem de dados
Dumpfile=dir:arq Localização e o nome do arquivo de dump
Logfile= Localização e o nome do arquivo de log
Directory=dir Diretório para localizar os arquivos de
Dump e Log
Nologfile=y Não grava arquivos de log
Sqlfile= Especifica um arquivo para gravar
comandos DDL
Job_name=identifier Nome para tarefa de import
Parallel Número máximo de processos para
importação
Parfile= Localização dos arquivos de Parâmetro
Reuse_datafiles=option Indica se arquivos deverão ser  sobrepostos
com o camando: Create Tablespace
Remap_datafiles=source:target Indica como renomear arquivos de dados
Remap_schema Determina a carga de um schema
Remap_tablespace Instrução para fazer Remap de tablespace
Include Determina que tipo de objeto serão
incluídos na importação
13 de novembro de 2010 [ Data pump]
exclude Determina que tipo de objeto serão
excluídos na importação
Status  
Streams_configuration Permitem o carregamento da ação do
metadata
Table_exists_action Exemplos de objetos importados
Transform Metadata transformam para aplicar-se aos
objetos aplicáveis. Válido transforme
keywords
Transport_datafile Passa os datafiles a serem importados
Transport_full_check verificam segmentos do armazenamento de
todas as tabelas
Transport_tablespace Determina a tablespace a ser importada
13 de novembro de 2010 [ Data pump]

Exemplo da utilização 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 novembro de 2010 [ Data pump]

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, estão aparecendo algumas mensagens de erro. Estas mensagens são
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 posição, e plugged então em uma outra base de dados.
Os dados movidos que usam Tablespaces transportável podem ser muito mais rápidos
do que executando uma exportação ou a importação dos mesmos dados, porque
transportar um tablespace requer somente a cópia dos datafiles e integrar a informação
do dicionário do tablespace. Mesmo ao transportar um tablespace, a exportação e a
importação são usadas e ainda segurar a extração e a recreação do metadata para esse
tablespace.
13 de novembro de 2010 [ Data pump]

impdp system/password directory=teste_dir dumpfile=db10tabelspace


.dmp logfile=exptbs10g.log tablespaces=users

Você também pode gostar