postgresql的升级

<script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>

postgresql的升级

<script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>

 

新版本的PostgreSQL的内部数据存储格式可能会发生改变。因此, 如果你正在升级一个版本号不象"8.1.x"这样的系统, 你就必须按照这里说的方法备份和恢复你的数据。 这些指导假设你现有的安装在 /usr/local/pgsql 目录里面, 并且数据区在 /usr/local/pgsql/data。 根据你的情况修改这些路径。

  1. 确保你在备过程中和备份后没有更新。 虽然即使有数据更新也不会影响备份的完整性,但是很明显更新的数据会被排除在备份之外, 而它是应该包括进来的。如果有必要, 可以编辑文件/usr/local/pgsql/data/pg_hba.conf (或等效的)文件中的权限以禁止除你之外的所有人的访问。

  2. 要备份出你的数据库安装,敲入:

    pg_dumpall > outputfile

    如果你需要保留 OID(比如说当你用到它们做外键时),那么在运行pg_dumpall时带 -o 选项。

    要做一个备份,你可以使用你当前正在运行的版本的 pg_dumpall 命令。不过,要获取最好的结果,最好使用来自 PostgreSQL 8.1 的 pg_dumpall,因为这个版本包含对老版本的错误修补以及改进。 虽然这个建议看起来好像很愚蠢,因为你还没有安装新版本,但如果你准备安装新版本, 我们还是建议你遵循这个建议。这个时候你可以按照平常那样完成安装, 然后再转换数据。这样将降低停业时间。

    <script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>
  3. 如果你准备把新版本的数据库装在与旧数据库相同的位置,那么关闭旧的数据库服务器,(至少在安装新文件之前如此):

    pg_ctl stop

    在那些在引导的时候就启动 PostgreSQL 的系统上,可能已经有一个启动文件可以干这件事。 例如,在一台Red Hat Linux 系统上我们可以找到

    /etc/rc.d/init.d/postgresql stop

    是可以用的。

    非常老的版本上可能没有 pg_ctl。如果你找不到它或者它不能运转, 那么可以找出老服务器的进程 ID,比如,用下面命令

    ps ax | grep postmaster

    然后给它发信号让他停止:

    kill -INT processID

     

  4. 如果你准备装在老版本的地盘,那么把它们挪走也是一条好计策, 以便你碰到麻烦后还能退回去。用这样的命令:

    mv /usr/local/pgsql /usr/local/pgsql.old

     

当你装完 PostgreSQL 8.1,创建一个新的数据库目录, 然后启动新服务器。要记住你必须用特殊的数据库用户登录后才能执行这些命令(如果你是升级的话这个帐户应该已经存在了)。

/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
/usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data

最后,使用新的 psql, 用下面命令恢复你的数据:

/usr/local/pgsql/bin/psql -d postgres -f outputfile
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将 PostgreSQL 升级到新版本,你可以按照以下步骤进行操作: 1. 备份数据库:在进行升级之前,务必先备份数据库以防止数据丢失。可以使用 `pg_dump` 命令将数据库导出到一个文件中。 2. 下载新版本:从 PostgreSQL 官方网站(https://www.postgresql.org/download/)下载最新的稳定版本。 3. 停止 PostgreSQL 服务:在升级之前,确保停止当前运行的 PostgreSQL 服务。具体的停止方法取决于所使用的操作系统和安装方式。 4. 安装新版本:使用下载的安装程序或包管理器将新版本的 PostgreSQL 安装到你的系统中。根据你的操作系统和安装方式,可能需要一些特定的步骤。 5. 迁移配置文件:将旧版本的 PostgreSQL 配置文件中的配置项移动到新版本的配置文件中。可以通过比较旧版本配置文件和新版本配置文件的差异来确定需要迁移的配置项。 6. 迁移数据目录:将旧版本的数据目录中的数据移动到新版本的数据目录中。可以使用 `pg_upgrade` 工具来完成这个步骤,该工具会将数据目录中的数据转换为新版本的格式。 7. 启动新版本:完成以上步骤后,启动新版本的 PostgreSQL 服务。确保服务正常运行,并验证数据库是否能够正常访问。 请注意,在进行任何升级操作之前,务必仔细阅读 PostgreSQL 官方文档中的升级指南,并确保你理解和遵循其中的步骤和注意事项。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值