Bom Dia Chiappa,

 

Utilizei o comando 

 

$ expdp SYSTEM/manager schemas=SYNCFW directory=SYNCFW
dumpfile=expdp_syncfw.dmp logfile=expdp_syncfw.log

 

Outra coisa, na base origem tenho 535 indices e na base destino ele importou
552 indices, estranho?

 

Origem

 

SQL> conn

Enter user-name: syncfw/prod

Connected.

SQL> select object_type,count(object_type) from user_objects

group by object_type

order by 1;  2    3

 

OBJECT_TYPE         COUNT(OBJECT_TYPE)

------------------- ------------------

INDEX                              535

LOB                                 17

SEQUENCE                           160

TABLE                              256

VIEW                               223

 

Destino

 

SQL> conn

Enter user-name: syncfw/prod

Connected.

SQL> select object_type,count(object_type) from user_objects

group by object_type

order by 1;  2    3

 

OBJECT_TYPE         COUNT(OBJECT_TYPE)

------------------- ------------------

INDEX                              552

LOB                                 17

SEQUENCE                           160

TABLE                              256

VIEW                               223

 

Grato,

 

Ednilson Silva

 

 

De: [email protected] [mailto:[email protected]] Em
nome de J. Laurindo Chiappa
Enviada em: quinta-feira, 21 de novembro de 2013 16:45
Para: [email protected]
Assunto: Re: RES: RES: [oracle_br] RES: Export/Import Schema

 

  

Sim, vc pode sim : o SYSTEM por default já possui o privilégio de exportar
qualquer tabela de qualquer schema E de criar tabelas/objetos em outros
schemas, e já possui acesso ao datapump, sem probs... 
Mostra pra gente a linha de comando Completa que vc usou e o texto completo
das mensagens de erro , que a gente pode palpitar melhor...

[]s

Chiappa

--- Em [email protected], "Ednilson Silva" <ednilson.silva@...>
escreveu
>
> Chiappa,
> 
> 
> 
> Eu posso fazer o expdp e impdp, com o SYSTEM?
> 
> Terminei o impdp, e apareceu a mensagem a abaixo:
> 
> 
> 
> Job "SYSTEM"."SYS_IMPORT_FULL_01" completed with 1 error(s) at 16:07:05
> 
> 
> 
> Grato,
> 
> 
> 
> Ednilson Silva
> 
> 
> 
> De: [email protected] [mailto:[email protected]] Em
> nome de J. Laurindo Chiappa
> Enviada em: quinta-feira, 21 de novembro de 2013 14:07
> Para: [email protected]
> Assunto: Re: RES: [oracle_br] RES: Export/Import Schema
> 
> 
> 
> 
> 
> pmfji, mas antes de fazer ainda há um ponto que vc deveria estar ciente ,
> pra não ter retrabalhos : da mesma forma que o exp/imp, o expdp/impdp usa
a
> cláusula de SCHEMA como uma filtragem de ownership dos objetos a exportar
-
> assim, os Privilégios (de sistema, tablespace quotas, etc, etc) do schema
> exportado não são exportados, e Nem as permissões públicas e Nem os
objetos
> Públicos ...
> Para vc extrair os DDLs de privs do schema exportado, como a origem é 10g
vc
> pode usar o primeiro script abaixo, e para consultar quais existem vc pode
> usar o segundo...
> 
> []s
> 
> Chiappa
> 
> -- script para gerar DDLs de permissões e privs de usuário
> SET LINESIZE 200
> SET PAGESIZE 0 FEEDBACK off VERIFY off
> -- SET TRIMSPOOL on
> SET LONG 1000000
> -- COLUMN ddl_string FORMAT A100 WORD_WRAP
> EXECUTE
>
DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'PRETTY',t
> rue);
> EXECUTE
>
DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'SQLTERMIN
> ATOR',true);
> COLUMN ddl FORMAT A4000
> define username=&&1
> spool &username._cr_ddl.sql
> SELECT DBMS_METADATA.GET_DDL('USER', upper('&username') ) DDL
> FROM dual;
> prompt -- Role
> SELECT DBMS_METADATA.GET_GRANTED_DDL('ROLE_GRANT', upper('&username')) DDL
> from dual
> where exists ( select 1 from dba_role_privs where
grantee=upper('&username')
> )
> ;
> 
> prompt -- Sys priv
> SELECT DBMS_METADATA.GET_GRANTED_DDL('SYSTEM_GRANT', upper('&username'))
DDL
> FROM dual
> where exists ( select 1 from dba_sys_privs where
grantee=upper('&username')
> )
> ;
> prompt -- Object priv
> SELECT DBMS_METADATA.GET_GRANTED_DDL('OBJECT_GRANT', upper('&username'))
DDL
> FROM dual
> where exists ( select 1 from dba_tab_privs where
grantee=upper('&username')
> )
> ;
> prompt -- tablespace quota
> SELECT
DBMS_METADATA.GET_GRANTED_DDL('TABLESPACE_QUOTA',upper('&username'))
> DDL
> from dual
> where exists ( select 1 from dba_ts_quotas where
username=upper('&username')
> )
> ;
> spool off
>
============================================================================
> ======
> -- script de Consulta de permissões à Objetos privilégios 
> set echo off
> set verify off
> set pages 9999
> col granted_role form a25
> col owner form a15
> col table_name form a33
> col privilege form a33
> ACCEPT username prompt 'Enter Username : '
> PROMPT Roles granted to user
> SELECT granted_role,admin_option,default_role
> FROM dba_role_privs
> WHERE grantee=UPPER('&username')
> ORDER BY 1;
> PROMPT Table Privileges granted to a user through roles
> SELECT granted_role, owner, table_name, privilege
> FROM ( SELECT granted_role
> FROM dba_role_privs WHERE grantee=UPPER('&username')
> UNION
> SELECT granted_role
> FROM role_role_privs
> WHERE role in (SELECT granted_role
> FROM dba_role_privs WHERE grantee=UPPER('&username')
> )
> ) roles, dba_tab_privs
> WHERE granted_role=grantee
> ORder by 1,2,3,4;
> PROMPT System Privileges assigned to a user through roles
> SELECT granted_role, privilege
> FROM ( SELECT granted_role
> FROM dba_role_privs WHERE grantee=UPPER('&username')
> UNION
> SELECT granted_role
> FROM role_role_privs
> WHERE role in (SELECT granted_role
> FROM dba_role_privs WHERE grantee=UPPER('&username')
> )
> ) roles, dba_sys_privs
> WHERE granted_role=grantee
> ORDER BY 1,2;
> PROMPT Table privileges assigned directly to a user
> SELECT owner, table_name, privilege
> FROM dba_tab_privs
> WHERE grantee=UPPER('&username')
> ORDER BY 1,2,3;
> PROMPT System privileges assigned directly to a user
> SELECT privilege, admin_option
> FROM dba_sys_privs
> WHERE grantee=UPPER('&username');
> undefine username
> 
> --- Em < <mailto:[email protected]>
mailto:[email protected]>  <mailto:[email protected]>
[email protected],
> "Ednilson Silva" < < <mailto:ednilson.silva@> mailto:ednilson.silva@>
<mailto:ednilson.silva@> ednilson.silva@> escreveu
> >
> > Ederson,
> > 
> > Muito obrigado pelas dicas, agora mãos a obra.
> > 
> > 
> > 
> > Ednilson Silva
> > 
> > 
> > 
> > 
> > 
> > De: [email protected] [mailto:[email protected]]
Em
> > nome de ederson2001br
> > Enviada em: quinta-feira, 21 de novembro de 2013 10:57
> > Para: [email protected]
> > Assunto: [oracle_br] RES: Export/Import Schema
> > 
> > 
> > 
> > 
> > 
> > OK Ednilson,
> > 
> > A principal diferença entre a dupla EXP/IMP e EXPDP/IMPDP é que a
Exp/Imp
> > roda no lado client da conexão e gera arquivo DMP no local determinado
por
> > FILE=
> > 
> > Já a Expdp/Impdp só roda no server, ou melhor, é uma ferramenta do lado
> > server e só gera arquivo no path (directory) configurado no banco onde
> > exige-se permissão de leitura/escrita naquele diretorio. A ferramenta
nova
> > não possui compatibilidade com os arquivos gerados pelo EXP, nem mesmo
se
> > forem da MESMA versão. O EXPDP possui diversos melhoramentos e
ferramentas
> > que otimizaram muito o uso desta ferramenta no quesito de manipulação de
> > dados de schemas. Não convém exportar um schema de um banco usando-se o
> > epxdp de outro banco, prefira exportar (expdp) na origem, transferir
(via
> > ftp, por ex.) para o servidor destino e realizar o impdp no destino,
> > respeitando a versão igual (entre rdbms) ou inferior do banco origem. 
> > 
> > No seu caso, vc já fez grande parte do trabalho. Já criou usuário e
> > tablespace no destino (lembrou das permissões de resource/qouta nas duas
> > tablespace?).
> > 
> > Vc pode sim, exportar do 10g e importar no 11g. Do 9i, melhor fazer com
a
> > dupla antiga EXP no 9i --> IMP do 10g ou 11g.
> > 
> > Conferir se tem directory configurado:
> > 
> > --Directory
> > SYS@oracle_origem> 
> > 
> > column DIRECTORY_PATH format a50;
> > column owner format a10;
> > select * from dba_directories;
> > 
> > OWNER DIRECTORY_NAME DIRECTORY_PATH
> > ---------- ------------------------------
> > -------------------------------------------
> > SYS XMLDIR /u01/app/oracle/product/11.2.0/xe/rdbms/xml
> > SYS DATA_PUMP_DIR /u01/app/oracle/admin/XE/dpdump/
> > 
> > Se não tiver directory na pasta que vc precisa, crie (exemplo):
> > create OR REPLACE directory EXPORTS AS '/oracle/backup/sfw/export';
> > grant read, write on directory EXPORTS to sfw;
> > 
> > oracle_origem> expdp sfw/senha schemas=SFW
directory=directory_name_origem
> > dumpfile=expdp_sfw.dmp logfile=expdp_sfw.log
> > 
> > Transferir o arquivo expdp_sfw.dmp para o servidor destino. Conferir
> também
> > a questão do DIRECTORY e se não existir, criar.
> > 
> > oracle_destino> impdp sfw/senha directory=directory_name_existente
> > dumpfile=expdp_sfw.dmp logfile=impdp_sfw.log 
> > 
> > Não há a necessidade de usar REMAP porque vc criou usuário e tablespace
no
> > destino, iguais à origem.
> > 
> > Ao final, confira o LOG gerado para ver se não houve nenhum erro.
> > 
> > À disposição,
> > 
> > Ederson Elias
> > DBA Oracle
> > http://br.linkedin.com/pub/ederson-elias/24/8b/8b0
> > ------------
> > Labor improbus omnia vincit
> > 
> > --- Em [email protected], "Ednilson Silva" <ednilson.silva@>
> > escreveu
> > >
> > > Bom Dia Ederson
> > > Segue respostas.
> > > -O schema que vc vai exportar, depende de objetos de um outro schema
no
> > > banco?: (S/N) N
> > > -Qual o espaço ocupado por este schema e em qual tablespace ele está
> > alocado
> > > e se os objetos usam mais de uma tablespace (ex: dados separados de
> > índices
> > > ou tablespaces grandes separadas em um datafile diferente): ??, ??, ??
+
> > ou
> > > – 20GB / DAT_SFW e IDX_SFW / 
> > > -O usuário existe no banco destino? (S/N) S
> > > -Se existir, vc vai atualizar os objs ou vai remover antes e trazer o
> > backup
> > > inteiro? (S/N), (S/N)? No destino, criei apenas o usuario (schema) e
> > > tablespaces com o tamanho igual
> > > -Haverá necessidade de criar tablespace nova no banco destino para
> > acomodar
> > > os dados do schema que virá pelo backup?: (S/N) S
> > > -Rodar um UTLRP no schema origem para garantir validade dos objetos a
> > serem
> > > exportados, pois após o import, vc deve rodar novamente o UTLRP e
contar
> > os
> > > objetos por type e validade, afim de conferir se todos os objetos
foram
> > > importados e estão corretamente compilados
> > > -Qual a versão inteira (primeiros 4 bytes da versão, ex: 10.2.0.5) das
> > duas
> > > versões (versão rdbms origem e versão rdbms destino), inclusive
> mostrando
> > se
> > > Standard/Enterprise ou mesmo se XE (o impdp não reconhece versão
> superior
> > à
> > > sua própria) (alguns recursos Enterprise são exclusivos e não existem
> nos
> > > bancos Standard/XE)? Oracle Database 10g Enterprise Edition Release
> > > 10.2.0.4.0
> > > 
> > > 
> > > 
> > > Eu preciso exportar o schema SFW e importar em outra base, esse
primeiro
> > > import seria uma base de homologação, depois irei fazer o processo
> > novamente
> > > em outra base, outro servidor e este será base de produção, nesta base
> > terá
> > > apenas este schema.
> > > 
> > > Uma pergunta, eu posso importar esse schema numa base 11g ? Pois
> > futuramente
> > > irei migrar. Já mato dois coelhos numa machadada só.
> > > 
> > > 
> > > 
> > > Como a grande maioria dos meus banco são 9i, e nunca utilizei o
> > expdp/impdp,
> > > queria uma opinião dos passos a seguir antes.
> > > 
> > > Grato
> > > 
> > > Ednilson Silva
> >
>



Responder a