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