- This topic has 3 replies, 3 voices, and was last updated 6 years, 10 months ago by José Laurindo Chiappa.
-
AuthorPosts
-
11 de outubro de 2017 at 11:43 pm #109019airoospParticipant
Boa tarde pessoal,
Preciso exportar todas as tabelas de um schema, e depois fazer o import destes tabelas com o mesmo schema só que em outro banco.
Procurei na internet algum exemplo mas não consegui fazer funcionar.
Se alguém tiver alguma dica, agradeço.
Obrigado.
Airton
12 de outubro de 2017 at 1:35 am #109020José Laurindo ChiappaModeratorNo expdp é Totalmente Bico de se fazer filtragens, com os parâmetros EXCLUDE (para Excluir coisas) e INCLUDE (para incluir) : no caso, a opção ao que entendo seria EXCLUIR as coisas que não são tabelas…. E como é de conhecimento (isso é assim desde a época do export tradicional), quando vc tem muitos parâmetros a fornecer vc os pode incluir num arquivo de Parâmetros, tipo :
C:apporacleadminO11GR2dpdump>type expdp_OE_only_tables.par
EXCLUDE=FUNCTION
EXCLUDE=PROCEDURE
EXCLUDE=PACKAGE
EXCLUDE=INDEX
EXCLUDE=VIEW
EXCLUDE=SEQUENCE
EXCLUDE=LOB
EXCLUDE=TYPE BODY
EXCLUDE=TRIGGER
EXCLUDE=INDEX
EXCLUDE=SYNONYM
EXCLUDE=VIEW
EXCLUDE=FUNCTION
EXCLUDE=TYPE==> Agora vou exportar incluindo esses parãmetros que vai Excluir as coisas que não são tabelas, assim :
C:apporacleadminO11GR2dpdump>expdp system/oracle dumpfile=expdp_OE_only_tables.dmp logfile=expdp_OE_only_tables.expdp schemas=OE parfile=expdp_OE_only_tables.par
Conectado a: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 – 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Iniciando “SYSTEM”.”SYS_EXPORT_SCHEMA_01″: system/******** dumpfile=expdp_OE_only_tables.dmp logfile=expdp_OE_only_tables.expdp schemas=OE parfile=expdp_OE_only_tables.par
Estimativa em andamento com o método BLOCKS…
Processando o tipo de objeto SCHEMA_EXPORT/TABLE/TABLE_DATA
Estimativa total usando o método de BLOCKS: 4.687 MB
Processando o tipo de objeto SCHEMA_EXPORT/USER
Processando o tipo de objeto SCHEMA_EXPORT/SYSTEM_GRANT
Processando o tipo de objeto SCHEMA_EXPORT/ROLE_GRANT
Processando o tipo de objeto SCHEMA_EXPORT/DEFAULT_ROLE
Processando o tipo de objeto SCHEMA_EXPORT/TABLESPACE_QUOTA
Processando o tipo de objeto SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
Processando o tipo de objeto SCHEMA_EXPORT/XMLSCHEMA/XMLSCHEMA
Processando o tipo de objeto SCHEMA_EXPORT/TABLE/TABLE
Processando o tipo de objeto SCHEMA_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT
Processando o tipo de objeto SCHEMA_EXPORT/TABLE/COMMENT
Processando o tipo de objeto SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
Processando o tipo de objeto SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT
Processando o tipo de objeto SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
. . exportou “OE”.”PRODUCT_DESCRIPTIONS” 2.379 MB 8640 linhas
. . exportou “OE”.”PURCHASEORDER” 243.9 KB 132 linhas
. . exportou “OE”.”WAREHOUSES” 12.45 KB 9 linhas
. . exportou “OE”.”CUSTOMERS” 77.98 KB 319 linhas
. . exportou “OE”.”PRODUCT_INFORMATION” 72.77 KB 288 linhas
. . exportou “OE”.”PRODUCT_REF_LIST_NESTEDTAB” 12.51 KB 288 linhas
. . exportou “OE”.”CATEGORIES_TAB” 14.15 KB 22 linhas
. . exportou “OE”.”SUBCATEGORY_REF_LIST_NESTEDTAB” 6.585 KB 21 linhas
. . exportou “OE”.”INVENTORIES” 21.67 KB 1112 linhas
. . exportou “OE”.”ORDER_ITEMS” 20.88 KB 665 linhas
. . exportou “OE”.”ORDERS” 12.39 KB 105 linhas
. . exportou “OE”.”PROMOTIONS” 5.507 KB 2 linhas
Tabela-mestre “SYSTEM”.”SYS_EXPORT_SCHEMA_01″ carregada/descarregada com sucesso
******************************************************************************
Conjunto de arquivos de dump para SYSTEM.SYS_EXPORT_SCHEMA_01 é:
C:APPORACLEADMINO11GR2DPDUMPEXPDP_OE_ONLY_TABLES.DMP
O job “SYSTEM”.”SYS_EXPORT_SCHEMA_01″ foi concluído===> okdoc ?? Tá respondida a sua pergunta….
No caso, para comprovar o conteúdo de um dumpfile SEM o importar completamente, uma Opção é vc extrair os DDLs, vou fazer isso só para comprovar que os EXCLUDEs funcionaram :
C:apporacleadminO11GR2dpdump>impdp system/oracle dumpfile=expdp_OE_only_tables.dmp logfile=expdp_OE_only_tables.impdp sqlfile=expdp_OE_only_tables.sql
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
Conectado a: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 – 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Tabela-mestre “SYSTEM”.”SYS_SQL_FILE_FULL_01″ carregada/descarregada com sucesso
Iniciando “SYSTEM”.”SYS_SQL_FILE_FULL_01″: system/******** dumpfile=expdp_OE_only_tables.dmp logfile=expdp_OE_only_tables.impdp sqlfile=expdp_OE_only_tables.sql
Processando o tipo de objeto SCHEMA_EXPORT/USER
Processando o tipo de objeto SCHEMA_EXPORT/SYSTEM_GRANT
Processando o tipo de objeto SCHEMA_EXPORT/ROLE_GRANT
Processando o tipo de objeto SCHEMA_EXPORT/DEFAULT_ROLE
Processando o tipo de objeto SCHEMA_EXPORT/TABLESPACE_QUOTA
Processando o tipo de objeto SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
Processando o tipo de objeto SCHEMA_EXPORT/XMLSCHEMA/XMLSCHEMA
Processando o tipo de objeto SCHEMA_EXPORT/TABLE/TABLE
Processando o tipo de objeto SCHEMA_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT
Processando o tipo de objeto SCHEMA_EXPORT/TABLE/COMMENT
Processando o tipo de objeto SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
Processando o tipo de objeto SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT
Processando o tipo de objeto SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
O job “SYSTEM”.”SYS_SQL_FILE_FULL_01″ foi concluído com sucesso em 18:12:37C:apporacleadminO11GR2dpdump>
==> Como eu estou no Windows, não tenho uma opção Nativa eficiente para buscar string dentro de um arquivo, uso então o CygWin :
jlchi_000@Dell15Rse /cygdrive/c/app/oracle/admin/O11GR2/dpdump
$ cat expdp_OE_only_tables.sql | grep -i “create”
CREATE USER “OE” IDENTIFIED BY VALUES ‘S:5D26DC6A092FF51E4058FA6B050E7D4CF999CC9322B93A43F037F36C8FB0;9C30855E7E0CB02D’
GRANT CREATE MATERIALIZED VIEW TO “OE”;
GRANT CREATE DATABASE LINK TO “OE”;
GRANT CREATE VIEW TO “OE”;
GRANT CREATE SYNONYM TO “OE”;
GRANT CREATE SESSION TO “OE”;
CREATE TABLE “OE”.”ORDER_ITEMS”
CREATE TABLE “OE”.”ORDERS”
CREATE TABLE “OE”.”INVENTORIES”
CREATE TABLE “OE”.”PRODUCT_INFORMATION”
CREATE TABLE “OE”.”PRODUCT_DESCRIPTIONS”
CREATE TABLE “OE”.”PROMOTIONS”
CREATE TABLE “OE”.”CUSTOMERS”
CREATE TABLE “OE”.”WAREHOUSES”
CREATE TABLE “OE”.”PURCHASEORDER” OF XMLTYPE
CREATE TABLE “OE”.”CATEGORIES_TAB” OF “OE”.”CATEGORY_TYP”jlchi_000@Dell15Rse /cygdrive/c/app/oracle/admin/O11GR2/dpdump
Só CREATE de tabelas, okdoc ?? Imagino que é ** TRIVIAL ** em cima disso vc fazer o import desse dumpfile em outro banco, desde que já existam lá tablespaces apropriadas E que o characterset lá seja compatível com o usado aqui….
[]s
Chiappa
19 de janeiro de 2018 at 9:58 pm #109155Fernanda MontovaniParticipantNossa essa é uma duvida que tenho tambem, eu queria fazer um export da minha base e importar em outra maquina para fazer como banco teste,
se alguem puder me indicar um bom material para estudo
meu banco oracle 11G esta num redhat 5 64 bits.
qual é mais viavel, via dump ou rman?
19 de janeiro de 2018 at 10:40 pm #109156José Laurindo ChiappaModeratorDepende : se vc usar o RMAN o que vc vai obter é um CLONE exato do banco origem, com TOOOODAS as procedures, function/triggers, com TOOODAS as tabelas de TOOOOdos os usuários, INCLUSIVE dos usuários internos Oracle, como o usuário SYSTEM, o usuário SYSMAN (do RMAN), o usuário DBSNMP (do OEM), o usuário XDB (do sub-sistema Oracle de processar XML), enfim, uma cópia exata, mesmo… SE isso não te incomoda nem impede em nada, OK, usa o RMAN : como refs, estude o manual Oracle de backup e Recover da sua versão e sites como https://oracle-base.com/articles/11g/duplicate-database-using-rman-11gr2 , http://www.oracle.com/technetwork/pt/articles/database-performance/active-database-duplication-2406487-ptb.html ou http://oracleinaction.com/duplicate-db-no-db-conn/ …
Já se você (como o outro colega aqui desta thread ) Não quer/Não pode copiar o banco INTEIRINHO e quer copiar só partes dele (apenas os objetos dentro de um dado schema, por exemplo, OU ao contrário, quer copiar todos os schemas MAS excluindo os schemas X, Y, Z) aí o melhor é o DATAPUMP, mesmo : para ref, consulte o manual Oracle de Database Utilities no capítulo sobre o datapump, pesquisa aqui no Fórum mesmo que várias outras threads já rolaram sobre isso, e e use sites como http://www.oracle.com/technetwork/pt/articles/database-performance/criando-copias-banco-de-producao-2368804-ptb.html , https://www.profissionaloracle.com.br/gpo/servicos/easyblog/entry/2014/04/17/data-pump-expdp-e-impdp , http://aprenderoracle.com/2011/07/05/backup-utilizando-data-pump-expdp-e-impdp/ e http://www.orafaq.com/wiki/Datapump ..[]s
Chiappa
-
AuthorPosts
- You must be logged in to reply to this topic.