导入导出的模式
a表模式的导入导出 b用户模式的导入导出 c全库模式的导入导出
导出 表模式
exp system/jaguar@cfp00_cpzb2003 tables=(cp.misywt14,cp.misywt18) file=d:\8.dmp log=d:\14t18_exp.log feedback=10000 compress=n
用户模式
exp system/jaguar@cfp00_cpzb2003 owner=cp file=e:\\cp.dmp log=e:\\cp_exp.log feedback=10000 compress=n
全库模式
exp system/jaguar@bkup full=y filesize=2000M file=(cpzb01.dmp,cpzb02.dmp) log=cpzb_exp.log feedback=10000 compress=n
使用参数文件导出(需要在当前路径下执行)
exp system/manager@bgd-11_yang1 parfile=t09_exp.par
t09_exp.par文件内容
tables = (test1.misywt09) file=e:\\yang\09.dmp log=e:\\yang\09_exp.log feedback=10000 compress=n
快速导出 使用参数 direct=y recordlength=65535
exp system/jaguar@cfp00_cpzb2003 owner=cp file=e:\\cp.dmp log=e:\\cp_exp.log direct=y recordlength=65535 feedback=10000 compress=n
有条件的导出,windows
exp system/ckdb5@ckdb5 tables = (cp962008.misywt40_1) file=t40_96.dmp log=t40_96_exp.log feedback=10000 QUERY='where substr(ckhwh,1,1)=\"5\"'
导入 表模式
imp system/jaguar@cfp99_cpzb fromuser=cp touser=cp tables= (misywt14,misywt18) file=e:\14t18.dmp log=e:\14t18_imp.log ignore=y buffer=5120000 commit=y feedback=10000
用户模式
imp system/jaguar@cfp99_cpzb fromuser=cp touser=cp file=d:\\cp.dmp log=d:\\cp_imp.log ignore=y buffer=5120000 commit=y feedback=10000
全库模式
imp system/jaguar@cfp99_cpzb full=y file=d:\\cp.dmp log=d:\\cp_imp.log ignore=y buffer=5120000 commit=y feedback=10000
导入大于2G的文件
imp system/jaguar@cfp10_cpzbbak filesize=2000M buffer=81920 commyit=y ignore=y
file=(cpzb01.dmp,cpzb02.dmp,cpzb03.dmp,cpzb04.dmp) log=cpzb_imp.log feedback=10000
使用参数文件导入(需要在当前路径下执行)
imp system/manager@bgd-11_yang1 parfile=t09_imp.par t09_imp.par 文件的内容 fromuser=test1 touser=test1 tables=(misywt09) file=e:\\yang\09.dmp log=e:\\yang\09_imp.log ignore=y buffer=5120000 commit=y feedback=10000
imp步骤说明
(1) create table (2) insert data (3) create index (4) create triggers,constraints
导出导入常见问题及解决方法
1) unix上导出导入,使用多个用户或多个文件时不使用()
2) ORACLE不同版本之间的导出导入 oracle8.0.4 netware oracle8.1.5 win2000
oracle8.1.7 unix ware 7.1.1 8.0.4――>8.1.7
使用8.0.4从自己导出,使用8.1.5导入8.1.7 8.1.7――>8.0.4
使用8.1.5从8.1.7 导出,使用8.1.5导入8.0.4 8.1.5――>8.1.7
使用8.1.5从自己导出,使用8.1.5导入8.1.7 8.1.7――>8.1.5
使用8.1.7从自己导出,使用8.1.7导入8.1.5
oracle8-oracle10之间导入导出的关系 1个表的测试 oracle8->oracle10
test 源数据库 目的数据库 导出的oracle版本 导入的oracle版本 文件大小 时间 结果 备注 test18 10 8 8 成功 有垃圾表BIN$bEheaq87S/q9CiHem/Ty6Q==$0 test28 10 8 10 成功 test38 10 10 8 失败 10无法连接8 test48 10 10 10 失败 10无法连接8 结论:oracle8->oracle10 导出使用8,导入使用10
oracle10->oracle8 test 源数据库 目的数据库 导出的oracle版本 导入的oracle版本 文件大小 时间 结果 备注 test510 8 8 8 成功 test610 8 8 10 失败 10无法连接8 test710 8 10 8 失败 8不能读取10得导出文件 test810 8 10 10 失败 10无法连接8 结论:oracle10->oracle8 导出使用8,导入使用8
使用oracle8导出oracle10时,出现错误 EXP-00003: 未找到段 (10,585868) 的存储定义 原因:不能用oracle8导出oracle10。 解决方法一:用oracle10导出oracle10。
解决方法二:可以完成用oracle8导出oracle10,目的将数据可以再导人oracle8。
更改数据库服务器端的oracle系统视图EXU9TNE的定义, 该视图定义为: $cat $ORACLE_HOME/rdbms/admin/catexp.sql CREATE OR REPLACE VIEW EXU9TNE (tsno, fileno, blockno, length) AS
SELECT ts#, segfile#, segblock#, length FROM sys.uet$ WHERE ext# = 1
将“UNION ALL select * from sys.exu9tneb”加入到视图exu9tne定义的最后一行,如下:
CREATE OR REPLACE VIEW exu9tne ( tsno, fileno, blockno, length) AS
SELECT ts#, segfile#, segblock#, length FROM sys.uet$
WHERE ext# = 1
UNION ALL
SELECT * from sys.exu9tneb /
以sys用户登录数据库服务器,执行上面的语句重新建立该视图 导出
导出完成后,再复原这个view(定义可以通过user_views看到) 对于oracle9i和oracle10g这个定义都相同:
CREATE OR REPLACE VIEW exu9tne ( tsno, fileno, blockno, length) AS
SELECT ts#, segfile#, segblock#, length FROM sys.uet$ WHERE ext# = 1
4)问题:导入时出现
IMP-00017: 由于 ORACLE 错误1658,以下的语句失败 IMP-00003: ORACLE 错误1658出现
ORA-01658: unable to create INITIAL extent for segment in tablespace CP_DATA
原因:导入大表( 大于80M ) 时, 存储分配失败
默认的EXP时, compress = Y, 就是把所有的数据压缩在第一个数据块上initial extent. 导入时, 如果不存在连续一个大数据块, 则会导入失败.
解决方法:导出80M以上的大表时, 记得compress= N, 则不会引起这种错误.
5)问题:导出的速度非常慢?
使用新的服务器IBM 255 ORACLE 8.1.7 SCO UNIX7.1.3以后,导出的速度非常慢 原因:不详
解决方法:在原来的exp语句后面加2个参数 direct=y recordlength=65535 exp system/jaguar@cpzb2005 compress=Y
filesize=2000Mfile=(exp_cpzb01.dmp,exp_cpzb02.dmp,exp_cpzb03.dmp,exp_cpzb04.dmp, exp_cpzb05.dmp) log=exp_cpzb.log full=y direct=y recordlength=65535 feedback=10000
direct 使卸库通过直接读取数据来提取数据,而忽略S Q L 命令处理层。这种方法比传统的路径卸库要快得多
RecordLength 写入卸库文件的记录的长度(字节数) Operating system-specific
7)导入数据的时候出现如下错误
IMP-00019: row rejected due to ORACLE error 1 IMP-00003: ORACLE error 1 encountered
ORA-00001: unique constraint (CP01.PBSYSCATCOLDICT_IDX) violated
Column : PBCATCOL Column :
原因:在导入的过程中有人使用pb连接,所以出现上面的错误。不影响数据使用。
8)表空间重用的问题
在一个数据库cpzb2007中,将cp15中的数据导入到cp31中,如何解决表空间重用的问题 导出cp15
exp system/oracle@cpzb2007 owner=cp15 filesize=1500M
file=(d:\\cp1501.dmp,d:\\cp1502.dmp,d:\\cp1503.dmp) log=d:\\cp15_exp.log compress=n
导入之前准备
1 收回目的用户的\"UNLIMITED TABLESPACE\"权限 2 取消目的用户在原数据导出表空间中的配额
3 将希望导入的表空间设为目的用户的默认表空间,并添加配额
revoke unlimited tablespace from cp31; alter user cp31 quota 0 on cp15_data;
alter user cp31 quota unlimited on cp31_data;
导入cp31
imp system/oracle@cpzb2007 fromuser=cp15 touser=cp31
file=(d:\\cp1501.dmp,d:\\cp1502.dmp,d:\\cp1503.dmp) log=d:\\cp31_imp.log ignore=y
导入完成后,再将unlinited tablespace授回目的用户 grant unlimited tablespace to cp31;
9)问题:EXP-00091: Exporting questionable statistics.
Cause: Export was able export statistics, but the statistics may not be usuable.
The statistics are questionable because one or more of the following happened during export:
a row error occurred, client character set or NCHARSET does not match with the server, a query clause was specified on export, only certain partitions or subpartitions were exported,
or a fatal error occurred while processing a table.
Action: To export non-questionable statistics, change the client character set or NCHARSET to match the server,
export with no query clause, export complete tables. If desired, import parameters can be supplied so that only
non-questionable statistics will be imported, and all questionable statistics will be recalculated.
根据服务器的字符集设置 //windows
set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
//linux
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- jqkq.cn 版权所有 赣ICP备2024042794号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务