1、教你如何使用expdp和impdp备份和恢复数据库教你如何使用expdp和impdp命令备份和恢复Oracle数据库create directory aa as D:aa;grant read,write on directory aa to king2;expdp king2/king2test02 schemas=king2 directory=aa dumpfile=expuser.dmp第一步:创建一个目录(也就是文件路径)来装导出的dmp文件方法:操作系统开始运行 输入 “cmd” 进入dos界面 输入“sqlplus/nolog”按回车如下图: 连接数据库,输入:conn sys/
2、king2test02 as sysdba(注意sys用户一定要用sysdba角色登录哦) 回车 如下图:接着,创建DIRECTORYcreate directory dir_dp as D:oracledir_dp;这里要注意,路径D:oracledir_dp一定要是系统已经存在的了,如果该路径不存在,下边的导出将会提示正确创建了路径的显示如下:第二步:授权(授予要导入数据的用户对该目录(路径)进行读和写的权限),还是在连接数据库的状态下输入:Grant read,write on directory dir_dp to lttfm;如下图:就完成了,关闭窗口,重新进入 dos界面就可以进行
3、备份了;第三步:执行导出expdp lttfm/lttfmfgisdb schemas=lttfm directory=dir_dp dumpfile =expdp_test1.dmp logfile=expdp_test1.log;连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1With the Partitioning, OLAP and Data Mining options启动 LTTFM.SYS_EXPORT_SCHEMA_01: lttfm/*fgisdb schory=dir_dp dumpfile =exp
4、dp_test1.dmp logfile=expdp_test1.log; */备注: 1、directory=dir_dp必须放在前面,如果将其放置最后,会提示 ORA-39002: 操作无效 ORA-39070: 无法打开日志文件。 ORA-39087: 目录名 DATA_PUMP_DIR; 无效 2、在导出过程中,DATA DUMP 创建并使用了一个名为SYS_EXPORT_SCHEMA_01的对象,此对象就是DATA DUMP导出过程中所用的JOB名字,如果在执行这个命令时如果没有指定导出的JOB名字那么就会产生一个默认的JOB名字,如果在导出过程中指定JOB名字就为以指定名字出现 如
5、下改成: expdp lttfm/lttfmfgisdb schemas=lttfm directory=dir_dp dumpfile =expdp_test1.dmp logfile=expdp_test1.log,job_name=my_job1; 3、导出语句后面不要有分号,否则如上的导出语句中的job表名为my_job1;,而不是my_job1。因此导致expdp lttfm/lttfm attach=lttfm.my_job1执行该命令时一直提示找不到job表说明:数据泵导出的各种模式:1、按表模式导出:expdp lttfm/lttfmfgisdb tables=lttfm.b$
6、i_exch_info,lttfm.b$i_manhole_info dumpfile =expdp_test2.dmp logfile=expdp_test2.log directory=dir_dp job_name=my_job2、按查询条件导出:expdp lttfm/lttfmfgisdb tables=lttfm.b$i_exch_info dumpfile =expdp_test3.dmp logfile=expdp_test3.log directory=dir_dp job_name=my_job query=where rownum113、按表空间导出:Expdp lttf
7、m/lttfmfgisdb dumpfile=expdp_tablespace.dmp tablespaces=GCOMM.DBF logfile=expdp_tablespace.log directory=dir_dp job_name=my_job4、导出方案Expdp lttfm/lttfm DIRECTORY=dir_dp DUMPFILE=schema.dmp SCHEMAS=lttfm,gwm5、导出整个数据库:expdp lttfm/lttfmfgisdb dumpfile =full.dmp full=y logfile=full.log directory=dir_dp job_name=my_job成功案例:原来电脑中已经存在目录(这里的king222dmp是手动的电脑中右键新建的,在Oracle数据库命令中将不会创建新的目录):impdp手工导入用户的时候要特别注意,数据库中不能够有与导出用户同名的用户,否则会报错数据已经存在,不能够成功导入。因为impdp导用户入数据库的时候,如果数据库中没有该用户存在的时候会自动创建该用户。导入语法如下:Impdp king2/king2test02 schemas=king2 directory=aa dumpfile=king.dmp
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1