我需要将用户转储(包括表格,程序等)作为FILENAME.dmp
。
如果我创建一个新用户并导入FILENAME.dmp
,则应创建所有内容。
如何创建此转储文件?
请不要打电话给我使用Run > EXP
或Run > IMP
功能,因为由于某些问题,该功能对我不起作用。
答案 0 :(得分:20)
EXP(导出)和IMP(导入)是您需要的两个工具。尝试在命令行和同一台机器上运行它们会更好。
它可以从远程运行,您只需要正确设置TNSNAMES.ORA
并安装所有与数据库版本相同的开发人员工具。在不知道您遇到的错误消息的情况下,我无法帮助您使exp / imp工作。
导出单个用户的命令:
exp userid=dba/dbapassword OWNER=username DIRECT=Y FILE=filename.dmp
这将创建导出转储文件。
要将转储文件导入其他用户架构,请先在 SQLPLUS 中创建新用户:
SQL> create user newuser identified by 'password' quota unlimited users;
然后导入数据:
imp userid=dba/dbapassword FILE=filename.dmp FROMUSER=username TOUSER=newusername
如果有大量数据,请调查增加BUFFERS
或查看expdp / impdp
设置exp和imp的最常见错误。检查您的PATH
包含$ORACLE_HOME/bin
,检查$ORACLE_HOME
是否设置正确并检查$ORACLE_SID
是否已设置
答案 1 :(得分:8)
只是为了保持最新状态:
当前版本的SQLDeveloper有一个导出工具(Tools > Database Export
),它允许您将模式转储到文件中,包含对象类型,对象名称,表数据等的过滤器。
如果您习惯在GUI环境中工作,那么设置和使用比exp
和imp
更容易,但如果您需要将其用于脚本编写,那么它不是通用的任何东西。
答案 2 :(得分:1)
正如更新一样,这也可以通过使用Toad 9来实现。转到数据库>导出>数据泵导出向导。如果您在下拉列表中找不到任何目录,则在desitination目录窗口中,您可能必须创建一个目录对象
CREATE OR REPLACE DIRECTORY data_pmp_dir_test AS '/u01/app/oracle/oradata/pmp_dir_test';
查看example。
答案 3 :(得分:0)
导出(或数据泵,如果你有10克/ 11克)是这样做的方法。为什么不问如何解决你的问题,而不是试图找到另一种方法呢?
答案 4 :(得分:0)
您的表格,用户和程序转储文件有一些简单的步骤:
转到sqlplus或任何sql * plus
connect by your username or password