Oracle的exp/imp命令用于实现对数据库的导出/导入操作;
exp命令用于把数据从远程数据库服务器导出至本地,生成dmp文件;
imp命令用于把本地的数据库dmp文件从本地导入到远程的Oracle数据库。
一、获取帮助信息
exp/imp help=y
二、数据导出
1、将数据库Oracles完全导出
C:\Users\LSG>exp system/tigertiger@oracles file=E:/smapleDB.dmp full=y
将数据库Oracles完全导出,用户名system密码manager导出到E:/sampleDB.dmp中
必须是 DBA 才能执行完整数据库或表空间导出操作
2、将数据库中某个用户的表导出
将数据库中system用户与sys用户的表导出
C:\Users\LSG>exp system/tigertiger@oracles file=E:/sampleDB.dmp ower=(system,scott)
3、将数据库中的某个用户的数据库表导出
C:\Users\LSG>exp system/tigertiger@oracles file=E:/sampleDB.dmp tables=(scott.emp,scott.dept)
4、将数据库中的某个用户的满足条件的数据库表导出
C:\Users\LSG>exp system/tigertiger@oracles file=E:/sampleDB.dmp tables=(scott.emp) query=‘where deptno=20’
三、数据导入
1、将备份数据库文件中的数据导入指定的数据库smapleDB中,如果smapleDB已经存在该表,则不再导入
imp system/manager@TEST file=E:/sampleDBf.dmp full=y ignore=y
2 将文件中的表emp_test导入
C:\Users\LSG>imp system/tigertiger@oracles file=E:/sampleDB.dmp tables=(emp_test)
- 导入一个完整数据库
imp system/manager file=bible_db log=dible_db full=y ignore=y
- 导入一个或一组指定用户所属的全部表、索引和其他对象
imp system/manager file=seapark log=seapark fromuser=seapark imp
system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold)
- 将一个用户所属的数据导入另一个用户
imp system/manager file=tank log=tank fromuser=seapark touser=seapark_copy
imp system/manager file=tank log=tank fromuser=(seapark,amy)
touser=(seapark1, amy1)
- 导入一个表
imp system/manager file=tank log=tank fromuser=seapark TABLES=(a,b)
- 从多个文件导入
imp system/manager file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4)
log=paycheck, filesize=1G full=y
- 使用参数文件
imp system/manager parfile=bible_tables.par
- 增量导入
imp system./manager inctype= RECTORE FULL=Y FILE=A
不少情况下要先将表彻底删除,然后导入。