我们在 linux 机器上安装了 oracle 11g。我想在本地 64 位 Windows 机器上复制数据库。我们总共有 403 个表,其中一些有外键约束。我不是 dba,所以我没有 sysdba 特权。我也无法关闭远程数据库。有没有一种快速的方法来做到这一点,而不是我一个一个地复制表格?谢谢
问问题
1029 次
1 回答
1
考虑到您没有授予 DBA 角色并且无法访问服务器机器,您将无法在您的机器上进行冷备份和安装,因为冷备份需要关闭数据库。
其次,您也不能使用 rman 实用程序。
您可以使用 expdp 实用程序将数据库导出为文件并使用 impdp 实用程序将其导入您的数据库。但是为了导出数据,您至少需要授予您的用户CONNECT和RESOURCE角色(假设您已经有 CONNECT 否则您将不会根本无法连接到数据库)并且使用这些角色,您只能导入您已经有权访问的对象。包括你拥有的物品。
另一方面,如果您需要完整的数据库导出,则需要授予EXP_FULL_DATABASE。DBA、SYS 和其他一些角色都包含了这个角色。因此,您最好的机会是联系 dba,询问授予您的用户的角色,看看他们对此有何反应。
于 2013-08-14T20:14:34.877 回答