日期:2014-05-16 浏览次数:20502 次
exp parfile=d:/test.par file=d:/back.dmp filesize=2000M log=d:/**.log
filesize的作用是为了防止有的os不支持2G以上容量的文件,而且大文件的I/O性能不好。
?
exp parfile=d:/test.par??
>>>test.par的内容
a)scott用户连接导出自己的所有对象?
userid=scott/tiger------连接的用户scott
file=d:/back.dmp------导出的文件的名字
?
b)用system用户连接来导出scott下的所有对象?
userid=system/manager
file=d:/back.dmp
owner=(scott) -------导出scott用户的所有对象
c)用system用户连接导出scott和test下的所有对象
userid=system/manager
file=d:/back.dmp
owner=(scott,test)
?
d)用system用户连接导出scott下的emp,dept表、test用户下的student表
userid=system/manager
file=d:/back.dmp
tables=(scott.emp,scott.dept,test.student)
?
e)导出整个数据库(备份整个数据库)--------必须用超级用户 system ,sys
userid=system/manager
file=d:/back.dmp
full=y
以下是比较全的一个导出整个数据库的参数文件
userid=system/manager
file=d:/back.dmp
buffer=1024000 ---------缓冲
rows=y ----------是否导出记录
compress=y ---------extent是否压缩
grants=y ----------grant语句是否导出
indexes=y ----------导出索引
full=y ----------全库导出
feedback=3 ----------显示导出进度每3行
?
f)导出表scott.dept中部门编号是40的记录
userid=system/manager
file=d:/back.dmp
tables=(scott.emp)?
query="where deptno=10"
?
g)导出表scott.emp中的记录
userid=system/manager
file=d:/back.dmp
tables=(scott.emp)?
feedback=3 ---------每3行记录显示一个点进度
?
如何把导出的数据导入到数据库中进行恢复
imp import缩写形式
dos命令
imp help=y 查看帮助
<1>把scott下的表emp导出 ,
然后删除表中的内容(truncate table emp),
利用导出的文件来恢复
a)导出
exp parfile=d:/test.par
>>> test.par
userid=system/manager
file=d:/back.dmp
tables=(scott.emp)
b)删除
truncate table emp; ---------删数据
或者
drop table emp; ----------删除结构
( delete from emp; -----------删数据可以恢复)
c)恢复
imp parfile=d:/test.par;
>>>test.par
userid=system/manager
file=d:/back.dmp?
fromuser=scott -----------从哪个用户来恢复
show=y -----------显示导入文件中的SQL语句
?
<2>scott下的对象全部复制到test用户下
(克隆用户scott)?
a)导出scott用户
exp parfile=d:/test.par
>>>test.par
userid=system/manager
file=d:/back.dmp
owner=(scott)
b)导入d:/back.dmp文件中的内容到test用户下
imp parfile=d:/test.par
>>>test.par
userid=system/manager
file=d:/back.dmp
fromuser=scott
touser=test
?
<3>如何进行全库导入
imp system/manager?
file=d:/back.dmp full=y ignore=y
full ----------全库
ignore ----------忽略导入过程中的错误