首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Ubuntu:升级PostgreSQL8.4数据库集群,供9.2服务器使用

Ubuntu:升级PostgreSQL8.4数据库集群,供9.2服务器使用
EN

Database Administration用户
提问于 2012-11-15 15:05:19
回答 1查看 1.7K关注 0票数 1

我已经在我的机器上安装了PG 9.2。我有一个大约一年前创建的数据库集群,使用initdb,使用postgreSQL版本8.4。

(8.4)数据集群消耗几个Gb,因此它在自己的单独硬盘上。我指示旧的8.4服务器在服务器启动时传递一个-D /path/ to / data /文件夹,从而使用正确的数据位置。

我的问题是:

我有一个(v8.4)数据库集群(包含大约10个数据库)位于/some/path/to/datadir

我有一个新安装的postgreSQL 9.2服务器。

如何升级集群(及其数据库),以便新服务器可以使用集群--记住我希望数据保持在当前的数据位置(映射到‘/’的物理上独立的设备)。

我尝试通过修改配置文件来针对旧集群文件运行服务器,我(不足为奇地)得到了以下错误:

代码语言:javascript
运行
复制
 * Starting PostgreSQL 9.2 database server                                                                                                     * The PostgreSQL server failed to start. Please check the log output:
2012-11-18 23:50:31 GMT FATAL:  database files are incompatible with server
2012-11-18 23:50:31 GMT DETAIL:  The data directory was initialized by PostgreSQL version 8.4, which is not compatible with this version 9.2.1.

那么,如何升级8.4集群(在指定的数据目录中),以供9.2服务器使用?

EN

回答 1

Database Administration用户

发布于 2012-11-15 23:02:22

Ubuntu使用pg_wrapper管理一个系统上的多个PostgreSQL安装。

在做任何事情之前,对数据库进行备份。

您可以使用pg_upgradecluster -n 9.1 8.4 main将您的8.4集群升级到9.1。升级完成后(它将进行转储和重新加载),您可以使用pg_stopcluster 8.4 main并确保仍然可以访问新集群上的所有数据。然后在新集群中编辑postgresql.conf,将端口更改为默认的5432,并且,当您高兴的时候,一切都很好,pg_dropcluster就是旧的集群。

请注意,pg_upgradecluster不使用pg_upgrade。它做一个转储和重新装载。对于大型数据库,您可能希望根据升级时的PostgreSQL文档,使用pg_upgrade或转储来手动管理升级。Ubuntu对PostgreSQL 迷茫pg_upgrade的奇怪打包,因此PostgreSQL文档中的过程将不完全匹配。

有关上面引用的命令和less /usr/share/doc/postgresql-common/README.Debian.gz,请参见手册页。

票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/28731

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档