Обсуждение: Using postgresql as desktop DB
We are using postgresql in desktop database role. We cannot demand from our users high-quality and stable hardware. So, we have frequent problems with database in cases of unexpected power interruption or software errors. All this problems has one kind - postgresql says "invalid page header block relation xxx page yyy" after restarting. I can repair such database manually by deleting random trash after real data in currupted table. But I'm so tired to do it. How can I to avoid this problem? Is there a tool for automatic repairing such errors? Nicholas -- nicholay.ryzhov@srsc.ru
On Fri, Jun 02, 2006 at 03:50:47PM +0400, Nicholay Ryzhov wrote: > We are using postgresql in desktop database role. We cannot demand from > our users high-quality and stable hardware. So, we have frequent > problems with database in cases of unexpected power interruption or > software errors. All this problems has one kind - postgresql says > "invalid page header block relation xxx page yyy" after restarting. I > can repair such database manually by deleting random trash after real > data in currupted table. But I'm so tired to do it. Make sure your disk doesn't lie about fsync. Postgres can defend against all sorts of bad hardware, but it's not magic. There are way to detect this (check the archives). BTW, without details about what version and what O/S and what hardware, there really is no help anyone can give you. > How can I to avoid this problem? Is there a tool for automatic repairing > such errors? Well, you can arrange for the system to automatically zero pages if the header is invalid, but seriously, you evidently don't care very much about your data. Have a nice day, -- Martijn van Oosterhout <kleptog@svana.org> http://svana.org/kleptog/ > From each according to his ability. To each according to his ability to litigate.
Вложения
Nicholas, in a transition period I did use PostgreSQL Win 32 8.0 and above on high quality server hardware. Which did not help, because of subtil problems with Windows, VMware and some HP Server tools. Result: we had around 3 blue screens of death every week. Sometimes even more. On a database server. Immediate solution was allways to just restart the server, and the database came up without crying. (long term solution to just dump that server) Just make sure that every write is really written to the disk, and not to some caching facility. Triple check your fsync setting in postgresql.conf. Best wishes, Harald -- GHUM Harald Massa persuadere et programmare Harald Armin Massa Reinsburgstraße 202b 70197 Stuttgart 0173/9409607 - on different matter: did you ever dream of visiting CERN? The place where the antimatter for exploding Vatican is created? To eat in cantinas with the worlds highest propability to stand in queue with future or past Nobel Prize Winners? To talk about Web 2.5 at the place where Web 0.1 up to Web 1.0 were developed? register at www.europython.org!