可后续补充:
EXP/IMP 命令参数 能在服务端和客户端使用,没有数据泵 expdp/impdp只能在服务端运行的限制,但是EXP/IMP导入导出服务端与客户端字符集是个令人讨厌的问题,数据泵就没有这个限制。
EXP:
1、整库完全导出:
EXP SYSTEM/MANAGER BUFFER=640000 FILE=C:/FULL.DMP FULL=Y
如果要执行完全导出,必须具有特殊的权限
2、用户模式:
EXP SONIC/SONIC BUFFER=640000 FILE=C:/SONIC.DMP OWNER=SONIC
这样用户SONIC的所有对象被输出到文件中。
3、表模式:
EXP SONIC/SONIC BUFFER=640000 FILE=C:/SONIC.DMP OWNER=SONIC TABLES=(SONIC)
这样用户SONIC的表SONIC就被导出
exp参数:
关键字说明(默认)
USERID 用户名/口令
FULL 导出整个文件 (N)
BUFFER 数据缓冲区的大小
OWNER 所有者用户名列表
FILE 输出文件 (EXPDAT.DMP)
TABLES 表名列表
COMPRESS 导入一个范围 (Y) 主要目的是为了消除存储碎片
RECORDLENGTH IO 记录的长度
GRANTS 导出权限 (Y)
INCTYPE 增量导出类型
INDEXES 导出索引 (Y)
RECORD 跟踪增量导出 (Y)
ROWS 导出数据行 (Y)
PARFILE 参数文件名
CONSTRAINTS 导出限制 (Y)
CONSISTENT 交叉表一致性
LOG 屏幕输出的日志文件
STATISTICS 分析对象 (ESTIMATE)
DIRECT 直接路径 (N)
TRIGGERS 导出触发器 (Y)
FEEDBACK 显示每 x 行 (0) 的进度
FILESIZE 各转储文件的最大尺寸
QUERY 选定导出表子集的子句
IMP:
具有三种模式(完全、用户、表)
1、完全导入:
IMP SYSTEM/MANAGER BUFFER=64000 FILE=C:/FULL.DMP FULL=Y
2、用户模式:
IMP SONIC/SONIC BUFFER=64000 FILE=C:/SONIC.DMP FROMUSER=SONIC TOUSER=SONIC
这样用户SONIC的所有对象被导入到文件中。必须指定FROMUSER、TOUSER参数,这样才能导入数据。
3、表模式:
EXP SONIC/SONIC BUFFER=64000 FILE=C:/SONIC.DMP OWNER=SONIC TABLES=(SONIC)
这样用户SONIC的表SONIC就被导入。
imp参数:
关键字 说明(默认)
USERID 用户名/口令
FULL 导入整个文件 (N)
BUFFER 数据缓冲区大小
FROMUSER 所有人用户名列表
FILE 输入文件 (EXPDAT.DMP)
TOUSER 用户名列表
SHOW 只列出文件内容 (N)
TABLES 表名列表
IGNORE 忽略创建错误 (N)
RECORDLENGTH IO 记录的长度
GRANTS 导入权限 (Y)
INCTYPE 增量导入类型
INDEXES 导入索引 (Y)
COMMIT 提交数组插入 (N)
ROWS 导入数据行 (Y)
PARFILE 参数文件名
LOG 屏幕输出的日志文件
CONSTRAINTS 导入限制 (Y)
DESTROY 覆盖表空间数据文件 (N)
INDEXFILE 将表/索引信息写入指定的文件
SKIP_UNUSABLE_INDEXES 跳过不可用索引的维护 (N)
ANALYZE 执行转储文件中的 ANALYZE 语句 (Y)
FEEDBACK 显示每 x 行 (0) 的进度
TOID_NOVALIDATE 跳过指定类型 id 的校验
FILESIZE 各转储文件的最大尺寸
RECALCULATE_STATISTICS 重新计算统计值 (N)
- 获取帮助
imp help=y - 导入一个完整数据库
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
bible_tables.par参数文件:
#Import the sample tables used for the Oracle8i Database Administrator’s
Bible. fromuser=seapark touser=seapark_copy file=seapark log=seapark_import - 增量导入
imp system./manager inctype= RECTORE FULL=Y FILE=A