如何在数据字典对象上导出/导入授权

时间:2014-11-12 16:23:56

标签: oracle export

我需要重新创建以使用expdp / impdp克隆数据库。 我从源数据库执行完全导出,重新创建一个空数据库并执行完全导入。 这个过程很顺利。

我的问题: Expdp不会导出数据字典对象的授权。 所以我的新数据库中有很多编译错误。

你知道怎么做吗?

ps:我在两个数据库上都没事。

我的导出命令是

expdp '"/ as sysdba"' DIRECTORY=expDir FULL=Y file=full.dbf log=full.log  flashback_time=systimestamp 

我的导入命令是:

impdp '"/ as sysdba"'  DIRECTORY=expDir FILE=full.dbf FULL=Y    LOG=import.full.log partition_options=merge

3 个答案:

答案 0 :(得分:0)

仅当导入了实际授予的Grant时,

imported才会为object。这意味着,实际授予的对象也应该是exported

例如,

如果user A granted to user B,那么,为了获得导入的授权,您必须export/import user A too,而不仅仅是用户B.当我说用户时,我指的是其架构中的各个对象。

答案 1 :(得分:0)

您的命令中缺少grants=y标记。

答案 2 :(得分:0)

我终于可以用程序dbms_metadata.get_granted_ddl来解决我的问题了。 我可以在sql文件中导出grant并将其导入我的新数据库