Oracle导入导出工具
介绍
EXP、IMP是Oracle数据库逻辑备份与恢复的工具,它可以在服务器端与客户端运行,EXP可以导出整个数据库,一个用户的所有对象,指定的表空间、表以及索引,使用IMP恢复EXP备份出来的数据。
一、EXP命令
1.1、常用参数介绍
FULL:导出整个数据库(N)
BUFFER:数据缓冲区的大小
OWNER:所有者用户名列表,你希望导出哪个用户的对象,就用owner=username
FILE:输出文件(EXPDAT.DMP)
TABLES:表名列表,指定导出的table名称,如:TABLES=table1,table2
INDEXES:导出索引(Y)
RECORD:跟踪增量导出 (Y)
ROWS:导出数据行(Y),否则是空表和表结构
PARFILE:参数文件名,如果你exp的参数很多,可以存成参数文件.
CONSTRAINTS:导出约束(Y)
CONSISTENT:交叉表一致性
LOG:屏幕输出的日志文件 (输出日志到文件)
FEEDBACK:显示每 x 行 (0) 的进度
FILESIZE:各转储文件的最大尺寸
QUERY:选定导出表子集的子句
TRANSPORT_TABLESPACE:导出可传输的表空间元数据 (N)
TABLESPACES:将传输的表空间列表
1.2、EXP导出整个数据库
exp \'/ as sysdba\' file=/home/oracle/backup/full.dmp log=/home/oracle/backup/full.log full=y buffer=1024000 feedback=5000
1.3、EXP导出指定表
exp \'/ as sysdba\' file=/home/oracle/backup/emp.dmp log=/home/oracle/backup/emp.log tables=scott.emp
只导出表结构:
exp \'/ as sysdba\' file=/home/oracle/backup/emp.dmp log=/home/oracle/backup/emp.log tables=scott.emp rows=n
1.4、EXP导出指定用户的所有对象
exp \'/ as sysdba\' file=/home/oracle/backup/scott.dmp log=/home/oracle/backup/scott.log owner=scott
1.5、EXP导出指定表空间
exp \'/ as sysdba\' file=/home/oracle/backup/users.dmp log=/home/oracle/backup/users.log tablespaces=users
1.6、使用PARFILE参数文件导出数据
[oracle@shao ~]$exp parfile=backup.par
[oracle@shao ~]$cat backup.par userid=username/password file=/home/oracle/backup/users.dmp log=/home/oracle/backup/users.log tablespaces=users
二、IMP命令
USERID:用户名/口令
FULL:导入整个文件(N)
BUFFER:数据缓冲区大小
FROMUSER:所有人用户名列表
FILE:输入文件(EXPDAT.DMP)
TOUSER:用户名列表
TABLES:表名列表
IGNORE 忽略创建错误(N)
INDEXES:导入索引(Y)
ROWS:导入数据行(Y)
PARFILE:参数文件名
LOG:屏幕输出的日志文件
FEEDBACK:显示每 x 行 (0) 的进度
FILESIZE:各转储文件的最大尺寸
TRANSPORT_TABLESPACE:导入可传输的表空间元数据 (N)
TABLESPACES:将要传输到数据库的表空间
DATAFILES:将要传输到数据库的数据文件
TTS_OWNERS:拥有可传输表空间集中数据的用户
2.1、IMP导入整个数据库
imp \'/ as sysdba\' file=/home/oracle/backup/full.dmp log=/home/oracle/backup/full.log full=y ignore=y buffer=1240000 feedback=5000
2.2、IMP导入指定表
imp \'/ as sysdba\' file=/home/oracle/backup/emp.dmp log=/home/oracle/backup/emp.log tables=scott.emp
2.3、IMP导入指定用户
imp \'/ as sysdba\' file=/home/oracle/backup/scott.dmp log=/home/oracle/backup/scott.log full=y
2.4、IMP导入指定表到指定用户
imp \'/ as sysdba\' file=/home/oracle/backup/scott.dmp log=/home/oracle/backup/scott.log fromuser=scott touser=hr