oracle 导入、导出dmp操作指令详解

标签:
it |
数据导出:
一.
他是操作系统下一个可执行的文件,存放目录/Oracle_Home/bin.
exp导出工具将数据库中数据备份压缩成一个二进制系统文件,可以在不同的OS间迁移.
他有三种模式:
a. 用户模式:导出用户所有对象以及对象中的数据.
b.表模式: 导出用户所有表或者指定表.
c.整个数据库: 导出数据库中所有对象.
例子(用户名system,密码manager):
1. 将数据库test完全导出,导出到D:tianma.dmp
2. 将数据库中的system用户与sys用户的表导出
exp system/manager@orcl file=d:\tianma.dmp owner=(system,sys)
3. 将数据库中的表student,class导出
exp system/manager@orcl file=d:\tianma.dmp tables(student,class)
4.将数据库中student表中filed字段以”00”打斗的数据导出
exp system/manager@test file=d:\tianma.dmp tables(student) query=”where filed like ‘00%’”
关键字
说明(默认)
-----------------------------------------
UserId
用户名/口令 Full
导出整个文件(N) Buffer
数据缓冲区的大小 Owner 所有者用户名列表
File
输出文件(ExpDat.dmp) Tables
表名列表 Compress
导入一个范围(Y),实现压缩,相当于用winzip把dmp文件很好的压缩。 Recordlength IO
记录的长度 Grants
导出权限(Y) Inctype
增量导出类型 Indexs
导出索引(Y) Record 跟踪增量导出(Y)
Rows
导出数据行(Y) Parfile
参数文件名 Constraints
导出约束(Y) Consistent
交叉表一致性 Log
屏幕输出的 日志文件 Statistics
分析对象(Estimate) Direct
直接路径(N) Triggers
导出触发器(Y) FeedBack
显示每x行(0) 的进度 FileSize
各转出文件的最大尺寸 Query
选定导出表子集的子句
下列关键字仅用于可传输的表空
Transport_Tablespace
导出可传输的表空间元数据(N) Tablespace
将传输的表空间列表
数据导入:
二.
他是操作系统下一个可执行的文件,存放目录/Oracle_Home/Bin
imp 导入工具将exp形成的二级制系统文件导入到数据库中.
他有三种模式:
a. 用户模式: 导入用户所有对象以及对象中的数据库
b. 表模式: 导入用户所有表或者指定的表.
c. 整个数据库: 导入数据库中所有对象
只有拥有 IMP_FULL_DATABASE 和DBA
权限的用户才能做整个数据库导入
例子(用户名admin,密码sa):
1. 将d:\tianma.dmp 中的数据导入 @orcl 数据库中
imp admin/sa@orcl file=d:\tianma.dmp.
imp admin/sa@orcl file=d:\tianma.dmp full=y
ignore=y 上面可能有点问题,以为有的表已经存在,然后他就报错,对该表就不进行倒入.在后面加上Ignore=y就可以了
2. 将d:\tianma.dmp中的表student导入
imp admin/sa@orcl file=d:\tianma.dmp tables(student)
3.导入params.dat,tianma.dmp内容
imp admin/sa
parfile=params.dat file=tianma.dmp show=n ignore=n grants=y fromuser=sott tables=(student,classs)
关键字 说明(默认)
-----------------------------------------
UserId 用户名/口令
Full
导入整个文件(N) Buffer 数据缓冲区的大小
Fromuser
所有人用户名列表 File
输入文件(ExpDat.dmp) Touser
用户名列表 Show
只列出文件内容(N) Tables
表名列表 Ignore
忽略创建错误(N) RecordLength IO
记录的长度 Grants
导入权限(Y) Inctype
增量导入类型 Indexs
导入索引(Y) Commit
提交数组插入 Rows 导入数据行(Y)
Parfile
参数文件名 Constraints
导入约束(Y) Log 屏幕输出的 日志文件
Destroy
覆盖表空间数据文件(N) IndexFile
将表索引信息写入指定的文件 Skip_Unusable_Indexes
跳过不可用索引的维护(N) Analyze
执行转出文件中的Analyze语句 Toid_Novalidate 跳过指定类型Id的校验
FileSize
各转储文件的最大尺寸 Recalculate_Statistics 重新计算统计值(N)
下列关键字仅用于可传输的表空间:
Transport_Tablespace 导入可传输的表空间元数据(N)
TableSpace 将要传输的数据库的表空间
DataFiles 将要传输的数据库的数据文件
TTS_Ownsers 拥有可传输表空间集中数据的用户
注意:
操作者要有足够的权限,权限不够它会提示。
数据库时可以连上的。可以用tnsping TEST 来获得数据库TEST能否连上。
附录………
Oracle 不允许直接改变表的拥有者, 利用Export/Import可以达到这一目的.
先建立import9.par,
然后,使用时命令如下:imp parfile=/filepath/import9.par
例 import9.par 内容如下:
FROMUSER=TGPMS
TOUSER=TGPMS2 (注:把表的拥有者由FROMUSER改为TOUSER,FROMUSER和TOUSER的用户可以不同)
ROWS=Y
INDEXES=Y
GRANTS=Y
CONSTRAINTS=Y
BUFFER=409600
file==/backup/ctgpc_20030623.dmp
http://img0.ph.126.net/nWIBA3kiEMcOzGx7zoiLzA==/6597943878401427639.jpg导入、导出dmp操作指令详解" />