微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在debian生产服务器上升级PostgreSQL的完整解决方案

我正在使用Debian 6(Squeeze)制作几个网站.我决定使用 postgresql backports,以便我可以使用Postgresql 9.0功能.我认为它将保持9.0并接收该主要版本的更新.

不幸的Squueze backports更新到Postgresql 9.1,所以我可能不会收到9.0的更新.

我正计划升级到9.1,但我知道它不是自动完成的.

我已经阅读了官方的pg_upgrade和debian的pg_upgradecluster,但我希望完整的升级指南.

>步骤是什么(首先是apt-get install postgresql,然后是pg_upgradecluster,然后删除旧的群集)?步骤列表会很好.
>什么是可能的故障情况?
>如何准备失败并对其作出反应?

我可以停止数据库几个小时,所以我想做好准备

很难为您提供根据您的情况/环境量身定制的逐步升级流程.
我试图点击下面的一些亮点,但你真的需要根据你的环境定制流程.

第零步,决定是否需要升级. Postgres 9.1带来了同步复制和一些其他很酷的东西,如果你需要它们很有用,但如果你不需要,就不会立即升级.

第1步,如果您的数据库很大,预计会花费很长时间.
即使使用pg_upgrade,复制备份数据的简单过程也可能需要一段时间:我们的16GB数据库需要一个小时或更长时间才能获得pg_dump / pg_restore,或者大约需要10-20分钟才能获得pg_upgrade.

第2步,我建议阅读9.1 Release Notes.确保你所需要的一切都没有破坏,你使用的任何东西都没有改变.
没有什么比数据库升级更能破坏您的生产系统以破坏您的月份.

步骤3,The upgrading section of the Postgres manual是必读的.

第4步,(在这里插入任何Debian特定的东西,但那真的不是我的包:-)

步骤5,创建升级计划.

步骤6,测试升级计划(技术上可选,但强烈建议).

步骤7,在生产系统上进行升级.

标准警告适用:

>升级可能会破坏您的数据库.做一个备份.

>确保您可以恢复它.
>确保您也可以恢复数据库系统的二进制文件.
(如果可以的话,请继续使用旧的Debian软件包 – 我已经看到人们无法退出失败的升级,因为他们不再拥有旧的数据库二进制文件了,这确实非常悲伤.)

>这将花费比您预期更长的时间.计划这个.我公司的数据库升级政策是“周五下午6点开始.如果周日上午9点没有工作,请回滚.”>装上一只刮毛猴如果您的数据非常重要,请将其副本还原到其他位置并测试升级路径.是的,我使用16GB数据库.如果我能找到一种让它工作的方法,我仍然可以使用160GB的数据库:-)

原文地址:https://www.jb51.cc/postgresql/192322.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐