我正在使用Django ORM访问PostgreSQL数据库,并且在罕见的事件中,Django将抛出DatabaseError,如django.db.utils.DatabaseError: invalid page header in block 299560 of relation base/83966/84778
。Postgres数据库错误无效页头
我研究过这个,看起来是因为数据库被破坏了。这非常令人沮丧,因为我总是在重新引导时彻底关闭数据库,并且我可以在磁盘驱动器上运行的每个检查都表明磁盘本身没有任何问题。因此,我只能断定PostgreSQL实际上并不符合ACID标准,并且在极少数情况下会破坏我的数据。
我已经能够找到的唯一修复方法是删除并重新创建我的数据库。显然,这不是一个真正的解决办法,因为我正在丢失所有的数据。有没有其他解决方法,或者我应该切换到更可靠的数据库,如MySQL?
我在Ubuntu 10.04上运行Postgresql-8.4.8。
顺便说一句,曾经去过.org或.info网站?猜猜哪个数据库服务于您的DNS解析请求? PostgreSQL是坚实的24/7分贝,但它不能在不可靠的硬件上可靠地运行。这台机器在测试中烧了多少? – 2011-05-06 17:14:09