迁移的Postgres DB当源Postgres的服务器脱机

问题描述:

所以啊标题说明了一切,我需要以某种方式获得DB是源服务器到新的服务器,但踢球是旧服务器崩溃:P和有什么办法可以将它全部移到新的服务器并导入它?迁移的Postgres DB当源Postgres的服务器脱机

旧的服务器只是拒绝运行Postgres了,我几乎可以肯定旧版服务器上运行的版本是8.4,而新服务器运行的是9.2版,会导致问题吗?

这是我所得到的,当我尝试在旧服务器上启动的Postgres,

/etc/init.d/postgresql-8.4 start 
* Use of the opts variable is deprecated and will be 
* removed in the future. 
* Please use extra_commands, extra_started_commands or extra_stopped_commands. 
* Starting PostgreSQL ... 
could not start server [ !! ] 
* ERROR: postgresql-8.4 failed to start 

也是我提前运行Gentoo :)

感谢您的帮助!

+0

所以我安装8.4迁移的数据文件夹上的新的服务器,而现在的8.4 PostgreSQL将无法启动不知道是怎么回事。并且为了使用'pg_upgrade',服务器必须是可运行的。我得到的错误是'不DATA_DIR set',我查了'/等/ conf.d/PostgreSQL的-8.4'文件和PGDATA vairable设置'#PostgreSQL的数据库目录 PGDATA =“/无功/ lib中/ PostgreSQL的/8.4/data“' – Msquared86 2013-03-14 17:33:24

您可以直接复制数据文件,但是您必须在目标服务器上使用相同的主版本 PG(例如8.4.x - “8.4”是主要版本)。最简单的方法来检查版本是通过psql -V

在这种情况下升级过程,如果你想向上移动到9.x的版本是不是太难。您需要在新服务器上安装8.4(通过软件包或手动安装),然后您需要使用pg_upgrade工具进行升级。 pg_upgrade附带PG的最新版本,因此期望在此期间在服务器上安装两次。

您可以找到的文档here

注意!在Gentoo,如果你的配置文件(postgresql.conf中+的pg_hba.conf)是位于/ var/lib中/ PostgreSQL的//数据/ pg_upgrade将失败。新的安装现在将配置文件存储在/ etc/postgresql中。

迁移之前,请确保您从复制文件中的/ etc/postgresql- /到pg_upgrade将失败的这个目录。