informix数据库load失败chunk减少没恢复?

有一个informix数据库的vm虚机,原有数据库表空间分布在4个chunk,路径为:/home/informix/dbs/datachunk1(其他分别为datachunk2-4) ,因/ 目录空间不足,于是新加一块盘,创建了一个datavg,新分配给文件系统挂载 /data ,用来新增chunk,语句如下: onspace -a datadbs -p /data/datachunk5 -o 0 -s 10240000 ,onstat -d 查看状态都是没问题的。于是测试数据导入,当时load 一个千万级的数据文件,想看下新加的datachunk5是否被使用,但后来事务日志满报错了(:long transaction aborted. 12204: RSAM error:Long transaction detected.),在load过程中发现原来的datachunk1和的datachunk3在减少,但Load失败后空间也没有恢复。网上查了资料,将事务日志关闭后重新load成功,而且看到使用了datachunk5(onstat -d 发现free变小了)。
现在有以下疑问:希望能得到高手的解答,十分感谢。
问题一:不扩/目录 ,而是将chunk放在新建的 /data , chunk与原路径不一致,是否会影响数据库i/o之类的性能?
问题二:为什么load因事件日志满失败后,datachunk1和3减少了没有恢复,而select查询导入的表却是0条记录,说明数据没有导入,那datachunk1减小了的size哪去了?

1回答

GBase_DavidGBase_David  数据库运维工程师 , GBase
wuwenpinmichael1983yinxin等赞同了此回答
问题一:不扩/目录 ,而是将chunk放在新建的 /data , chunk与原路径不一致,是否会影响数据库i/o之类的性能?答:1、关闭数据库,COPY原来在CHK文件到/data中,但是需要创建一个软连接,指向/home/informix/dbs/datachunk1ln -s /data/datachunk1 /home/informix/dbs/datachunk12、重...显示全部

问题一:不扩/目录 ,而是将chunk放在新建的 /data , chunk与原路径不一致,是否会影响数据库i/o之类的性能?
答:
1、关闭数据库,COPY原来在CHK文件到/data中,但是需要创建一个软连接,指向/home/informix/dbs/datachunk1
ln -s /data/datachunk1 /home/informix/dbs/datachunk1

2、重启数据库,这样是可以的
至于IO的性能,需要去衡量你新加入的磁盘IOPS高还是用来的磁盘IOPS高。

问题二:为什么load因事件日志满失败后,datachunk1和3减少了没有恢复,而select查询导入的表却是0条记录,说明数据没有导入,那datachunk1减小了的size哪去了?
答:
你在带日志的情况下load,引起了长事务,load操作需要回滚的,所以你select就是0条了。
至于datachunk1和3减少了没有恢复的问题,我怀疑是extent没有释放,反正长事务回滚之后数据量也是0条,你可以drop表重建即可。

建议:
1、了解一下长事务的概念;
2、了解一下dbsapces\chunk\表的关系

收起
 5天前
  • 再问1,这样创建软连接,相当于mv 这个文件到/data 然后做连接吗?那么原来的/home/informix/dbs/datachunk1 是占用 / 10G,按照1操作空间是否释放?
  • mv /home/informix/dbs/datachunk1 /data/datachunk1 ln -s /data/datachunk1 /home/informix/dbs/datachunk1 按照你的理解,MV了空间不会释放吗?
  • [此评论已删除]
  • 谢谢,生产因为这个库不能停,我测试环境操作下,那比如datachunk1 我怎么查哪些表数据在上面
  • 不好意思再问下:mv /data/datachunk5 /data/dbs/datachunk5; ln -s /data/dbs/datachunk5 datachunk5 这样操作后,执行onstat -d 发现datachunk5的fee 变成0 了,库select查询也错:311 cannot open system catalog(systables) 155 ISAM error:Primary and Mirror chunks are bad 你说chk文件是在哪,跟这个有关吗
  • ajun85  ajun85 回复 ajun85
    问题解决了,onspaces -s datadbs -p /data/datachunk5 -o 0 -P 后恢复正常了,再做mv ln操作后又都是正常的,没有刚才 的问题,奇怪

提问者

ajun85系统运维工程师, urcb

问题状态

  • 发布时间:5天前
  • 关注会员:2 人
  • 问题浏览:153
  • 最近回答:5天前
  • 关于TWT  使用指南  社区专家合作  厂商入驻社区  企业招聘  投诉建议  版权与免责声明  联系我们
    © 2018  talkwithtrend — talk with trend,talk with technologist 京ICP备09031017号-30