bj-jn 发表于 2014-3-10 13:42:19

使用impdp导数时报ORA-39126与ORA-01775: looping chain of synonyms错误

环境:
  源库:10.2.0.5 64bit             目标库:10.2.0.5 64bit
以下是本人的操作步骤
1.源库导出数据
expdp cnbmbak/oracle directory=dump_dir dumpfile=test.dmp tables=CNBMCRM1822.test

2.拷贝文件到目标库
。。。。。。

3.目标库导入数据
impdp cnbmbak/oracle directory=dump_dir dumpfile=test.dmp remap_schema=CNBMCRM1822:cnbmbak
报错信息如下:
Processing object type TABLE_EXPORT/TABLE/TABLE
ORA-39126: Worker unexpected fatal error in KUPW$WORKER.PUT_DDLS
ORA-01775: looping chain of synonyms
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
ORA-06512: at "SYS.KUPW$WORKER", line 6409

----- PL/SQL Call Stack -----
  object      line  object
  handle    number  name
0xa47dda78     15370  package body SYS.KUPW$WORKER
0xa47dda78      6436  package body SYS.KUPW$WORKER
0xa47dda78     12590  package body SYS.KUPW$WORKER
0xa47dda78      3397  package body SYS.KUPW$WORKER
0xa47dda78      7064  package body SYS.KUPW$WORKER
0xa47dda78      1340  package body SYS.KUPW$WORKER
0x943802f8         2  anonymous block

Job "CNBMBAK"."SYS_IMPORT_FULL_01" stopped due to fatal error at 10:52:21

4.目标库开启1775事件
sqlplus / as sysdba
SQL> alter system set events '1775 trace name ERRORSTACK level 3';


5.目标库再次导入数据
重现错误
Processing object type TABLE_EXPORT/TABLE/TABLE
ORA-39126: Worker unexpected fatal error in KUPW$WORKER.PUT_DDLS
ORA-01775: looping chain of synonyms

ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
ORA-06512: at "SYS.KUPW$WORKER", line 6409

----- PL/SQL Call Stack -----
  object      line  object
  handle    number  name
0xa47dda78     15370  package body SYS.KUPW$WORKER
0xa47dda78      6436  package body SYS.KUPW$WORKER
0xa47dda78     12590  package body SYS.KUPW$WORKER
0xa47dda78      3397  package body SYS.KUPW$WORKER
0xa47dda78      7064  package body SYS.KUPW$WORKER
0xa47dda78      1340  package body SYS.KUPW$WORKER
0xb763bea0         2  anonymous block

Job "CNBMBAK"."SYS_IMPORT_FULL_02" stopped due to fatal error at 11:08:58

6.目标库关闭1775事件
SQL> alter system set events '1775 trace name errorstack off';

7.查找trace文件
这里又遇到个疑问,1775事件设置后无法产生相应的trace

补充:关于test表无论在目标库还是源库都没有与之相关的同义词存在, 求指点,感谢!

psufnxk2000 发表于 2014-3-10 21:35:20

照 mos的说法,
trace 文件 在 directories 目录里。
并且用这个方法 之后,大概就能找到问题了

bj-jn 发表于 2014-3-11 09:05:02

psufnxk2000 发表于 2014-3-10 21:35 static/image/common/back.gif
照 mos的说法,
trace 文件 在 directories 目录里。
并且用这个方法 之后,大概就能找到问题了


我找的那篇MOS是说在user_dump_dest参数指定的路径下不过没找到,你说的directories目录是哪里啊?

生生不息 发表于 2014-3-11 14:14:49

有可能是datapump的数据字典出问题,可以尝试reload datapump的数据字典,
For Oracle version 10.2:

1. Catdph.sql will Re-Install DataPump types and views
SQL> @$ORACLE_HOME/rdbms/admin/catdph.sql

Note: If XDB is installed, then it is required to run "catmetx.sql" script also.
Use this code to verify if XDB is installed:
SQL> select substr(comp_name,1,30) comp_name,
     substr(comp_id,1,10) comp_id,
     substr(version,1,12) version,
     status
     from dba_registry;

Sample output if XDB installed,
Oracle XML Database    XDB    -version-    VALID

2. prvtdtde.plb will Re-Install tde_library packages
SQL> @$ORACLE_HOME/rdbms/admin/prvtdtde.plb

3. Catdpb.sql will Re-Install DataPump packages
SQL> @$ORACLE_HOME/rdbms/admin/catdpb.sql

4. Dbmspump.sql will Re-Install DBMS DataPump objects
SQL> @$ORACLE_HOME/rdbms/admin/dbmspump.sql

5. To recompile  invalid objects, if any
SQL> @$ORACLE_HOME/rdbms/admin/utlrp.sql


bj-jn 发表于 2014-3-12 16:40:46

生生不息 发表于 2014-3-11 14:14 static/image/common/back.gif
有可能是datapump的数据字典出问题,可以尝试reload datapump的数据字典,
For Oracle version 10.2:



非常感谢,这个问题困扰了几天,按照你的方法问题解决!
页: [1]
查看完整版本: 使用impdp导数时报ORA-39126与ORA-01775: looping chain of synonyms错误