我们怎么修这个呢?它只是一个运行的Informix命令,还是我们必须取消分配并重新分配数据库存储?
IBM Informix Dynamic Server版本9.40.UC4
编辑:我们实际上不再关心旧数据,只是我们想写新数据,但它不会让我们.无论如何要解决这个问题?
解决方法
但是你的情况和这种腐败现在如何从“空”中恢复数据.
为此,您需要恢复归档逻辑日志备份.
然后,您将在崩溃前将所有数据恢复到上次状态.
你有没有 ?嗯….我很确定你现在的想法是:ooopsss ……
这是您在没有硬件冗余的环境中应该具备的最小值.
之后研究的其他选项是配置数据库以镜像不同硬盘上的所有块…这样一来,如果一个坏了,另一个保持全部运行.
阅读这篇文章https://stackoverflow.com/questions/19905391/why-informix-dbexport-is-generating-corrupt-data,也许它可以帮到你.
编辑:
如果块被破坏,没有意义想在它上面写任何东西.
在这种情况下,引擎非常有限,以保证数据的完整性.
如果有一些数据,你将无法删除块(考虑到数据库仍指向那里有东西).
更好的解决方案是导出未损坏的文本文件,从零重新创建实例,创建数据库,结构并重新加载数据……
需要了解这些产品是用资源制作的,以保证数据的完整性而不是破坏它(考虑到管理员正确配置它).
作为参考,请检查此链接:
> Informix Manual 11.70 – Deal with corruption
> IBM Technotes – Unloading around table corruption
> IBM Technotes – How to unload rows from a table avoiding inaccessible data using the ROWID