Thread: Error in starting PostgreSQL Server 7.4 after crash
It all started like this: My postgresql 7.4 running in CentOS crashed with one database missing in al= l my backups. But, I have a copy of the entire pgsql/data directory (which = is unforunately a version grabbed while the server was still running...) I need to recover that database and I have tried the following: Installed postgre 7.4 again and replaced the new data folder with the one f= rom my backup, didn't work: postgresql service couldn't start. So, I used pg_resetxlog PGDATA with PGDATA pointing to my current /pgsql/da= ta. It said transaction log reset. At this point, the postgresql is not run= ning, so I cannot dump my old data. Starting the postgresql doesn't work. So I tried: export PGDATA=3D/var/lib/pgsql/data Then I tried to pg_ctl start but ended up with following message: -bash-3.00$ pg_ctl start FATAL: database files are incompatible with server DETAIL: The database cluster was initialized with BLCKSZ 6330300, but the = server was compiled with BLCKSZ 8192. HINT: It looks like you need to recompile or initdb. postmaster successfully started -bash-3.00$=20 Any suggestions? Thanks in advance. _________________________________________________________________ Stay up to date on your PC, the Web, and your mobile phone with Windows Liv= e. http://clk.atdmt.com/MRT/go/msnnkwxp1020093185mrt/direct/01/=
sagar koirala <sagarkoirala25@hotmail.com> writes: > So, I used pg_resetxlog PGDATA with PGDATA pointing to my current /pgsql/data. It said transaction log reset. At this point,the postgresql is not running, so I cannot dump my old data. Starting the postgresql doesn't work. > So I tried: export PGDATA=/var/lib/pgsql/data > Then I tried to pg_ctl start but ended up with following message: > -bash-3.00$ pg_ctl start > FATAL: database files are incompatible with server > DETAIL: The database cluster was initialized with BLCKSZ 6330300, but the server was compiled with BLCKSZ 8192. > HINT: It looks like you need to recompile or initdb. Seems like you must have used a pg_resetxlog that doesn't actually match your database. You omitted all the details of "installed postgres 7.4 again" but I'll bet you messed up there somehow. (32-bit vs 64-bit is one possible gotcha that I don't think 7.4 defended against very well.) > Any suggestions? Thanks in advance. Get the right software version and start over from the data-directory backup that I hope you still have. The data directory you have now is likely unsalvageable --- just running pg_resetxlog again is unlikely to fix it. Worst case, you'll have to initdb and start from the latest pg_dump dump you've got ... regards, tom lane