informix load 大表的时候出错
出错提示:458: Long transaction aborted. 12204: RSAM error: Long transaction detected.
847: Error in load file line 1934286.
网上查了下:大概就是日志空间不够,事务不能被滚回,自动结束。
解决:将数据库改为不带日志模式:
informix/etc/onconfig
1、TAPEDEV 由rmt0 改为 null
ontape -s -N dbname
2、dbimport
3、将数据库改为带日志模式:
ontape –s-U dbname
但是执行ontape -s -N dbname 就要求做0级备份...0级备份失败了,日志状态会改变吗?
请问有什么方法?能详细说下解决步骤吗?
谢谢了 1、将onconfig文件中的TAPEDEV 和LTAPEDEV两个参数都设置为/dev/null
2、ontape -s -N <dbname>#无日志模式
3、load工作
4、ontape -s -U <dbname> #非缓冲日志,如果是缓冲日志则为-B
5、将onconfig文件中的TAPEDEV和LTAPEDEV两个参数设置为修改前状态。
回复 #2 wuicpp 的帖子
online 状态也可以修改吗?没有影响吗 online下可以改,只要修改的数据库没有会话连接在上面就行。 原帖由 star_yao 于 2008-4-13 14:21 发表 http://bbs.chinaunix.net/images/common/back.gif出错提示:
458: Long transaction aborted. 12204: RSAM error: Long transaction detected.
847: Error in load file line 1934286.
网上查了下:大概就是日志空间不够,事务不能被滚回,自动结束。
...
alter table tabname type (raw);
改成无日志模式,然后在
load
然后再
alter table tabname type (standard);
注意上面不能有主键,索引等。你也可以先drop了,然后重建
我想,这个会快很多
页:
[1]