Windows下PostgreSQL数据库的迁移、备份
备份:
pg_dumpall -U postgres > backup_file
恢复:
psql -U postgres < backup_file
升级(当然要把以前的数据迁移到新系统):
目前我在Windows XP上用的PostgreSQL的版本是8.1,既然有新版本8.3.4出来了,就想升级到这个版本。
一般小版本升级,如把8.3.1升级到8.3.4,只需要升级程序就可用,原来的数据仍然可用。可是如果把8.1升级到8.3.x就要
用pg_dump或pg_dumpall和psql或pg_restore命令了。
如果能两个系统同时存在,可以用命令:
pg_dumpall -p 5432 | psql -d template1 -p 6543
我在使用时,提示Administrator密码不对,于是使用命令
pg_dumpall -U postgres -p 5432 | psql -U postgres -p 6543
如果有多个数据库要迁移,就要输入多次密码,比较烦。
可以编辑pgpass.conf,在其中加入postgres及其密码,就不用多次手工输入密码了。
PostgreSQL自带的帮助文档“PostgreSQL Help”上有更详细的备份、恢复、升级等信息。