Обсуждение: pg_dump: aborting because of version mismatch
>>I am keep getting error of mismatch of pg_dump version. how should one dealing with different version of pg_dump normally?
C:\Program Files\pgAdmin III\1.8\pg_dump.exe -h 192.168.222.129 -p 5433 -U postgres -F c -b -v -f "C:\Documents and Settings\steven\Desktop\template.backup" template_postgis
pg_dump: server version: 8.3.9; pg_dump version: 8.3.0
pg_dump: aborting because of version mismatch (Use the -i option to proceed anyway.)
pg_dump: *** aborted because of error
Process returned exit code 1.
>>If I use the '-i' option it still give the following error
[postgres@localhost ~]$ pg_dump -h 172.16.1.246 -p 5432 -U postgres -Fc -i postgres > postgres
Password:
pg_dump.bin: server version: 8.4.0; pg_dump.bin version: 8.3.9
pg_dump.bin: proceeding despite version mismatch
pg_dump.bin: SQL command failed
pg_dump.bin: Error message from server: ERROR: column "reltriggers" does not exist
LINE 1: ...oles WHERE oid = relowner) as rolname, relchecks, reltrigger...
^
pg_dump.bin: The command was: SELECT c.tableoid, c.oid, relname, relacl, relkind, relnamespace, (SELECT rolname FROM pg_catalog.pg_roles WHERE oid = relowner) as rolname, relchecks, reltriggers, relhasindex, relhasrules, relhasoids, d.refobjid as owning_tab, d.refobjsubid as owning_col, (SELECT spcname FROM pg_tablespace t WHERE t.oid = c.reltablespace) AS reltablespace, array_to_string(c.reloptions, ', ') as reloptions from pg_class c left join pg_depend d on (c.relkind = 'S' and d.classid = c.tableoid and d.objid = c.oid and d.objsubid = 0 and d.refclassid = c.tableoid and d.deptype = 'a') where relkind in ('r', 'S', 'v', 'c') order by c.oid
2010/2/23 Net Tree Inc. <nettreeinc@gmail.com>: >>>I am keep getting error of mismatch of pg_dump version. how should one dealing with different version of pg_dump normally? > C:\Program Files\pgAdmin III\1.8\pg_dump.exe -h 192.168.222.129 -p 5433 -U postgres -F c -b -v -f "C:\Documents and Settings\steven\Desktop\template.backup"template_postgis > pg_dump: server version: 8.3.9; pg_dump version: 8.3.0 > pg_dump: aborting because of version mismatch (Use the -i option to proceed anyway.) > pg_dump: *** aborted because of error > Process returned exit code 1. >>>If I use the '-i' option it still give the following error > > [postgres@localhost ~]$ pg_dump -h 172.16.1.246 -p 5432 -U postgres -Fc -i postgres > postgres > Password: > pg_dump.bin: server version: 8.4.0; pg_dump.bin version: 8.3.9 > pg_dump.bin: proceeding despite version mismatch > pg_dump.bin: SQL command failed > pg_dump.bin: Error message from server: ERROR: column "reltriggers" does not exist > LINE 1: ...oles WHERE oid = relowner) as rolname, relchecks, reltrigger... > ^ > pg_dump.bin: The command was: SELECT c.tableoid, c.oid, relname, relacl, relkind, relnamespace, (SELECT rolname FROM pg_catalog.pg_rolesWHERE oid = relowner) as rolname, relchecks, reltriggers, relhasindex, relhasrules, relhasoids, d.refobjidas owning_tab, d.refobjsubid as owning_col, (SELECT spcname FROM pg_tablespace t WHERE t.oid = c.reltablespace)AS reltablespace, array_to_string(c.reloptions, ', ') as reloptions from pg_class c left join pg_depend don (c.relkind = 'S' and d.classid = c.tableoid and d.objid = c.oid and d.objsubid = 0 and d.refclassid = c.tableoid andd.deptype = 'a') where relkind in ('r', 'S', 'v', 'c') order by c.oid You're doing two different things here. In the first one it's pg_dump 8.3.0 against server 8.3.9. This should, I think, work if you use -i. It's not recommended, but it should work. In the second one, it's pg_dump 8.3.9 against server 8.4.0. This is simply not supported. You need to use pg_dump 8.4 for server 8.4. -- Magnus Hagander Me: http://www.hagander.net/ Work: http://www.redpill-linpro.com/
Thanks..
This is what I am confused about. I installed a ver. 8.4 postgresql, why it's pg_dump is 8.3.9?? For first one, how could this possibly having problem using pg_dump that comes with the server install??
the first one I backup using pgAdmin III ver. 1.8.4 on a ver 8.3.9 postgreSQL server
the second one I backup using command line on a ver 8.4 postgreSQL server
Is this something that can solved by upgrade or reinstall ver. 8.4 of pg_dump?
Steven
--
---------------------------------------
Steven Huang
Is that its only downward compatible but not upward? which mean I can do restore on 8.4 from backup created by ver 8.3 pg_dump, but probably won't work the other way around? Definitely impossible? then what is '-i' use for.....?
Steven
On Tue, Feb 23, 2010 at 5:55 PM, Magnus Hagander <magnus@hagander.net> wrote:
2010/2/23 Net Tree Inc. <nettreeinc@gmail.com>:You're doing two different things here. In the first one it's pg_dump>>>I am keep getting error of mismatch of pg_dump version. how should one dealing with different version of pg_dump normally?
> C:\Program Files\pgAdmin III\1.8\pg_dump.exe -h 192.168.222.129 -p 5433 -U postgres -F c -b -v -f "C:\Documents and Settings\steven\Desktop\template.backup" template_postgis
> pg_dump: server version: 8.3.9; pg_dump version: 8.3.0
> pg_dump: aborting because of version mismatch (Use the -i option to proceed anyway.)
> pg_dump: *** aborted because of error
> Process returned exit code 1.
>>>If I use the '-i' option it still give the following error
>
> [postgres@localhost ~]$ pg_dump -h 172.16.1.246 -p 5432 -U postgres -Fc -i postgres > postgres
> Password:
> pg_dump.bin: server version: 8.4.0; pg_dump.bin version: 8.3.9
> pg_dump.bin: proceeding despite version mismatch
> pg_dump.bin: SQL command failed
> pg_dump.bin: Error message from server: ERROR: column "reltriggers" does not exist
> LINE 1: ...oles WHERE oid = relowner) as rolname, relchecks, reltrigger...
> ^
> pg_dump.bin: The command was: SELECT c.tableoid, c.oid, relname, relacl, relkind, relnamespace, (SELECT rolname FROM pg_catalog.pg_roles WHERE oid = relowner) as rolname, relchecks, reltriggers, relhasindex, relhasrules, relhasoids, d.refobjid as owning_tab, d.refobjsubid as owning_col, (SELECT spcname FROM pg_tablespace t WHERE t.oid = c.reltablespace) AS reltablespace, array_to_string(c.reloptions, ', ') as reloptions from pg_class c left join pg_depend d on (c.relkind = 'S' and d.classid = c.tableoid and d.objid = c.oid and d.objsubid = 0 and d.refclassid = c.tableoid and d.deptype = 'a') where relkind in ('r', 'S', 'v', 'c') order by c.oid
8.3.0 against server 8.3.9. This should, I think, work if you use -i.
It's not recommended, but it should work.
In the second one, it's pg_dump 8.3.9 against server 8.4.0. This is
simply not supported. You need to use pg_dump 8.4 for server 8.4.
--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/
--
---------------------------------------
Steven Huang
2010/2/23 Net Tree Inc. <nettreeinc@gmail.com>: > Thanks.. > This is what I am confused about. I installed a ver. 8.4 postgresql, why it's pg_dump is 8.3.9?? For first one, how couldthis possibly having problem using pg_dump that comes with the server install?? Comes with what server install? It depends on how you install PostgreSQL, and on what platform you are. But clearly you are using a pg_dump that comes from a previous version. It could be that you have both installed, but that the 8.3 version comes first in your PATH perhaps? > the first one I backup using pgAdmin III ver. 1.8.4 on a ver 8.3.9 postgreSQL server pgadmin ships with a copy of pg_dump. 1.8 ships with pg_dump from 8.3, so -i should work there. pgadmin 1.8 isn't supported with server 8.4 at all anyway, so you need pgadmin 1.10 for that - which ships with pg_dump from 8.4. > the second one I backup using command line on a ver 8.4 postgreSQL server > Is this something that can solved by upgrade or reinstall ver. 8.4 of pg_dump? > Is that its only downward compatible but not upward? which mean I can do restore on 8.4 from backup created by ver 8.3pg_dump, but probably won't work the other way around? Definitely impossible? then what is '-i' use for.....? No. You can restore on 8.4 only if you used pg_dump 8.4. But you ca nuse pg_dump 8.4 on 8.3 just fine. -i really is for minor versions only. And due to the fact that it's not really useful, it's been removed (well the option is there, but it doesn't do anything) in 8.4. -- Magnus Hagander Me: http://www.hagander.net/ Work: http://www.redpill-linpro.com/