获取帮助
===================================================================
imp help=y
准备工作
=====================================================================
在命令行中执行下面的命令设置环境变量
c:>set ORACLE_SID=orcl
没有设置这个环境变量有可能会导致:ORA-12560 错误
exp.exe 备份数据库
=====================================================================
1、完全备份数据库
EXP SYSTEM/MANAGER BUFFER=64000 FILE=C:\FULL.DMP FULL=Y
如果要执行完全导出,必须具有特殊的权限
2、用户模式(一个):
EXP <user>/<pwd> BUFFER=64000 FILE=C:\back.DMP OWNER=<user>
这样用户<user>的所有对象被输出到文件中。
3、表模式:
EXP <user>/<pwd> BUFFER=64000 FILE=C:\back.DMP OWNER=<user> TABLES=(t1,t2)
这样用户<user>的表t1, t2就被导出
imp 导入备份
=====================================================================
1. 导入一个完整数据库
imp system/manager file=full.dmp log=full.log full=y ignore=y
如果要执行完全导出,必须具有特殊的权限
2. 导入一个或一组指定用户所属的全部表、索引和其他对象
imp <user>/<pwd> file=back.dmp [log=back.log] fromuser=seapark
imp system/manager file=back.dmp [log=back.log] fromuser=(seapark,amy,amyc,harold)
3. 将一个用户所属的数据导入另一个用户
imp system/manager file=back.dmp [log=back.log] fromuser=seapark touser=seapark_copy
imp system/manager file=back.dmp [log=back.log] fromuser=(seapark,amy) touser=(seapark1, amy1)
4. 导入一个表
imp <user>/<pwd> file=back.dmp [log=back.log] fromuser=<user> TABLES=(a,b)
参数说明
=====================================================================
imp.exe <user>/<pwd> <key>=<val>
USERID: 用户名/口令
FILE 输入/输出文件名 (EXPDAT.DMP)
OWNER: 所有者用户名列表
FULL: Y/N,导出整个文件 (N)
BUFFER: 数据缓冲区大小
TABLES: 表名称列表
DIRECT: 直接路径 (N)
GRANTS:导出权限 (Y)
INCTYPE:增量导出类型
ROWS: 导出数据行 (Y)
PARFILE:参数文件名
优化exp和imp的性能
================================================================
exp /imp 可配置一些参数,以改进Export和Import的性能。至于性能具体能提升多高,则取决于要导出或导入的数据,以及数据量的大小。
用以下通用参数改进Export的性能:
DIRECT:对一个Export,将DIRECT参数设为DIRECT=Y,将数据直接转移
到Export客户端。这样的转移绕过SQL命令处理层(估值缓冲区),从而避免了
无谓的数据转换。
RECORDLENGTH:增大RECORDLENGTH参数值,来改进性能。为该参数
推荐的值是DB_BLOCK_SIZE的一个整数倍,或者是文件系统I/O块大小的一个
整数倍。更改这个参数的值会影响写入磁盘前积累的数据量。该参数的最大值为
64千字节(64 KB)。
用以下通用参数改进Import的性能:
BUFFER:BUFFER参数指定了缓冲区的大小,数据行将通过这个缓冲区进行转
移,由此便决定了由Import导入的每个阵列插入中的行数。如配合COMMIT=Y
参数指定BUFFER参数,则Import会在每一个阵列插入之后进行提交,而不是在
载入完整的表之后再默认地提交。一个较大的BUFFER参数值有助于改善性能。
但假如BUFFER值过高,会造成OS分页和换行,反而影响性能。
INDEXES。INDEXES参数指定是否导入用户生成的索引。如指定
INDEXES=N,则将提高Import的性能,因为在一个无索引的表中导入数据要快得
多。注意,如果首先用INDEXFILE=返回Import,来在请求的Import模式下提取
索引创建命令,再将其写入指定的文件,那么以后仍可重建索引。
使用INDEXFILE选项时,不会导入数据对象。可对输出文件()进行编辑,
并将其作为一个SQL脚本使用,以便在Import之后创建索引。