有一张有2G的表,它有86个FLOAT类型的字段,现在我想把他迁移到别一个服务器上去。在EXP导出时没问题,但在IMP导入里出现以下错误:连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production经由常规路径导出由EXPORT:V09.02.00创建的文件
已经完成ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的导入
. . 正在导入表 "TAHE_SZJT_AC08"
IMP-00009: 导出文件异常结束
IMP-00020: 用于列缓冲区大小 (22) 的长整数列过大
IMP-00028: 上一个表的部分导入已回退: 回退 120372 行
成功终止导入,但出现警告。请教各位大侠这是为什么?怎么解决?
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production经由常规路径导出由EXPORT:V09.02.00创建的文件
已经完成ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的导入
. . 正在导入表 "TAHE_SZJT_AC08"
IMP-00009: 导出文件异常结束
IMP-00020: 用于列缓冲区大小 (22) 的长整数列过大
IMP-00028: 上一个表的部分导入已回退: 回退 120372 行
成功终止导入,但出现警告。请教各位大侠这是为什么?怎么解决?
解决方案 »
- oracle sql developer 导出已查询的结果
- 如何取树状结构中某节点的包含其所有父级节点的路径?
- 求数据库开发方面的试卷?
- 删除重装后一直停在D:\oracle8\ora81\bin\lsnrctl start LISTENER,我怎么重装啊?
- 搞oracle这行的待遇如何?
- 没解决的问题再问,Oracle9i的安装和office2000,.net,SQl Server有冲突吗,还是和瑞星2003有冲突??高手帮忙
- 8i升级到9i后系统性能下降,程序调后台数据库像死机一样。。。
- 用SQL语句,向oracle表中插入当前的系统时间,怎么 办!请指点。。在线 等。。
- 怎样察看表中字段的注释或说明
- SQL请教,有两张表,表A是主表,表B是从表,如何实现下面的展示格式
- 除了DBA外,其它用户用Sql*plus登陆不了
- oracle中用户与数据表的隶属问题
Username: scott/tigerConnected to: Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Produc
tion
With the Partitioning, OLAP and Data Mining options
Enter array fetch buffer size: 4096 > 8192
设置成4096的倍数,尽量的大些试试
2,还不行,就看看原来表是不是有函数索引,Unsed Columns。如果有删除了在重新导出。
3,还不行,可能是文件传输时损坏了,把原来文件在考一份过来(最好不要用FTP传)
4,还不行,可能就是bug了,你该去把该打的补丁都大上再试试了
imp user/pass file=xx full=y buffer=99999999
案例1:http://www.cnoug.org/viewthread.php?tid=36652
Q:请问各位怎样提高imp导入的速度呀?数据库的文件大小是800M,exp的时候花了7分钟,然后我把文件拷到另一台机子上做imp导入花了一个小时都没有导完,好像死机一样,请问各位怎样提高imp的速度呀?其有一个表的字段是blob类型的。语句是这样的。$imp username/password@sid file=aa.dmp fromuser=aa touser=aa ignore=y buffer=40960000; A:
800M怎么可能imp这么长时间???我们几百个G的东西也不过1小时内搞定优化,不要动态分配资源(先建好各种空间)
也可以考虑分步,先把定义ddl导出,改一改(看看那些initial就知道要改了-如果是9i以前的版本),再导入定义.然后再导入数据进一步优化可以考虑不导入索引,把约束关掉;导完数据然后再重建和使约束生效调整share_pool、large_pool,检查SGA,PGAhttp://www.itpub.net/showthread.php?s=&threadid=298089有關提高export/import速度的討論!
對於export/import我有以下幾個疑問:
1.如何使得export更快?
2.Buffer這個參數的設置,到底有哪些考慮的因數?該如何設置?
3.commit這個參數到底是=n還是=y好?
4.在import時,下面哪種方法最快?
A: 先 imp rows=y constraints=n indexes=n
然後 imp rows=n constraints=y indexes=yB: 先 imp rows=y constraints=y indexes=n
然後 imp rows=n constraints=n indexes=yC: 先 imp rows=y constraints=y indexes=n
然後 imp rows=n constraints=n indexfile=test.idx
再提取test.idx裡面的內容手動對index進行重建。5.上面indexfile=test.idx的test.idx文件中,會包含這些table的constraints內容嗎
dx6340
先imp data, 再创建index, 这样更快。commit=y
husthxd
imp rows=n constraints=n indexes=n
imp rows=y
-- 用脚本创建约束和索引
refrence:
http://blog.itpub.net/post/11/4651
http://blog.itpub.net/post/11/41921.imp的buffer在主机内存充裕的情况下越大越好,当然有最大值的限制
2.如果磁盘空间充裕,undo表空间扩展不成问题的话,用默认值commit=n.
3.用toad或者其他第三方工具导出约束、索引创建语句。btw:38g的导出文件,设置buffer=1g,imp后创建约束和索引,在8个小时内导入完毕。索引和约束创建1个小时完成。总共只需要10个小时不到完成数据迁移。
主机是hp n5000,8cpu,8g memory.
工具是用来提高生产效率的。
有工具为何不用?
用toad而不用imp时指定indexfile=test.idx是因为觉得方便。
没其他更好的理由了。jlandzpa
1.log_buffer调大
2.如果是归档模式,先改成非归档.
3.redo加大biti_rainy
1.如何使得export更快?
export direct=y 快2.Buffer這個參數的設置,到底有哪些考慮的因數?該如何設置?内存足够自然大比较好3.commit這個參數到底是=n還是=y好?commit = n 则表示当一个表的数据imp完毕之后才提交,y 表示当设置的buffer 满的时候提交,n需要更多的回滚段,y则如果一个表中途imp失败只能回滚部分数据,重新imp需要处理这个情况。对于性能来说难说有多大的影响。4.在import時,下面哪種方法最快?如果约束和索引是分离的,索引不创建,那 主键和唯一约束如何生效?主键和唯一约束的生效一定是要先建立相关索引的。5.上面indexfile=test.idx的test.idx文件中,會包含這些table的constraints內容嗎?
纸上得来终觉浅,为何不动手一看
呵呵,我是这样做的
调大redo log,log_buffer,非归档模式
IMP 时 rows=y constraints=n indexes=n buffer=4096000 commit=y indexfile=test.idx
然后调大sort_area_size。(1.5倍最大索引占用空间)
修改test.idx文件,让索引以nologging方式创建。
执行test.idx。IMP性能基本最大化了:)
使用commit=y
把此用户的表空间建成一个5G的,再建一个回滚段为5G的就可以了。