0

我正在尝试将架构复制到同一个数据库中。我认为 EXPDP 和 IMPDP 将是执行此操作的最简单方法,它从数据库导出模式并将其导入同一数据库上的另一个模式,这正是我所需要的。

但我有一些问题。

这就是我所做的:

CREATE OR REPLACE DIRECTORY exp_schema AS 'C:\DataPump\Schema Export';
GRANT READ, WRITE ON DIRECTORY exp_schema TO system;

这成功地创建了目录并授予系统用户所需的权限。

但是,当我尝试在命令行上运行 EXPDP 函数时:

expdp system/password schemas=system directory=exp_schema
dumpfile=schm.dmp logfile=schm_log.log

它因以下错误而失败:

ORA-31626: job does not exist
ORA-04063: package body "SYS.DBMS_INTERNAL_LOGSTDBY" has errors
ORA-06508: PL/SQL: could not find program unit being called: "SYS.DBMS_INTERNAL
LOGSTDBY"

我不知道如何解决这个问题。难道我做错了什么?

4

1 回答 1

0

尝试这个:

ALTER PROCEDURE SYS.DBMS_INTERNAL_LOGSTDBY COMPILE;
ALTER PROCEDURE SYS.DBMS_LOGREP_UTIL COMPILE;

干杯

于 2019-10-24T07:27:01.380 回答