postgresql 9.3 升级至 9.4

前言:

postgresql的升级方式有两种 一种是使用 pg_dumpall 备份后 导入至新版本即可。

另一种就是本文使用pg_upgrade方式升级 是从文件级别将 老的数据库文件 复制至新的版本中

注意:

升级前请备份重要数据 最好在测试环境测试后再升级

环境:

系统: centos6.x x86 已安装 postgresql 9.3

升级步骤:

首先安装postgresql 9.4

一 、安装9.4的yum源

yum install -y http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-centos94-9.4-1.noarch.rpm

二、安装postgresql 9.4

yum install -y postgresql94-server postgresql94-contrib

初始化数据库

/etc/init.d/postgresql-9.4 initdb

三、开始升级

首先 需要关掉postgresql9.3

/etc/init.d/postgresql-9.3 stop

切换至postgres 用户

 su - postgres

执行升级命令

/usr/pgsql-9.4//bin/pg_upgrade -v -d /var/lib/pgsql/9.3/data/  -D /var/lib/pgsql/9.4/data/  -b /usr/pgsql-9.3/bin/  -B /usr/pgsql-9.4/bin/

选项:  -b 老版本bin目录

-B 新版本目录

-d 老版本data目录

-D 新版本data目录

升级成功后会提示如下信息:

 Upgrade Complete
----------------
Optimizer statistics are not transferred by pg_upgrade so,
once you start the new server, consider running:
    analyze_new_cluster.sh
Running this script will delete the old cluster‘s data files:
    delete_old_cluster.sh

切换到root 启动9.4

/etc/init.d/postgresql-9.4 start

切换到postgres 执行如下脚本

sh analyze_new_cluster.sh

删除老版本数据目录(可选)

sh delete_old_cluster.sh

最后:

数据的升级到此就结束了,不过若你更改过pg_hba.conf 或者其它配置文件 别忘记去新版本中更改

参考: http://www.postgresql.org/docs/9.4/static/pgupgrade.html

pg_dumpall 升级见: http://www.postgresql.org/docs/9.4/static/upgrading.html

postgresql 源: http://yum.postgresql.org/repopackages.php

postgresql 9.3 安装见 http://my.oschina.net/firxiao/blog/295027

时间: 2024-08-29 07:34:51

postgresql 9.3 升级至 9.4的相关文章

PostgreSQL版本快速升级

PostgreSQL版本快速升级 写在前面 PostgreSQL9.5版本支持数据分片的功能,为以后做分布式考虑,准备将生产环境的9.1版本升级至9.5.中间需要做数据迁移. 在迁移操作中,为保证数据完整性,一般需要在数据库停止的情况下进行备份恢复操作,在数据量小的情况下,通过pg_dumpall的方式备份恢复也是很迅速的,但如果数据量大的情况,再使用这种方式将会耗去大量的时间,特别在生产环境中,长时间的停止使用数据库是非常致命的. PostgreSQL提供了pg_upgrade的命令用于数据库

zabbix 3.4.x 二进制包升级至 Zabbix 4.0

Zabbix 3.4.x 二进制包升级至 Zabbix 4.0 1.官方文档 Red Hat Enterprise Linux/CentOS:https://www.zabbix.com/documentation/4.0/zh/manual/installation/upgrade/packages/rhel_centos Debian/Ubuntu:https://www.zabbix.com/documentation/4.0/zh/manual/installation/upgrade/

postgresql Linux安装

1,改权限,执行命令:chmod 755 postgresql-9.2.4-1-linux-x64.run 2,执行命令安装数据库.进入文件所在目录,输入./postgresql-9.2.4-1-linux-x64.run .然后选择数据库安装目录. 本篇默认直接回车.即安装路径为/opt/PostgreSQL/9.2/ 3,选择数据保存的路径.本篇也默认.直接回车.即路径为:/opt/PostgreSQL/9.2/data 目录. 4,设置postgres账户的密码,以及设置端口号.本篇端口号

seam2.2根据已有数据库(postgresql)生成项目

首先呢,这是我向同哥请教的一个文题,然后同哥把整个过程给我解答了一遍,谢谢同哥的乃森及引针啦---- seam2.2根据已有数据库(postgresql)生成项目 一,建数据库 进入pgAdmin新建一个数据库然后用eclipse的插件ErMaster导出sql或者是自己手写sql新建数据表 ,这里新建了一个名为test的数据库 里面有两个表,member和department,为多对一的关系,注意不要忘了设置主键 二,进入seam目录运行 ./seam setup ./seam create-

postgresql学习之安装篇

---恢复内容开始--- 安装方法: 1.可以使用操作系统自带的安装源 2.可以使用官网下载的源码进行安装 3.可以使用编译好的包入.run格式的安装包安装(本文使用的是这种安装方法,下载地址http://www.postgres.cn/download) 安装之前首先需要为postgresql数据库新建一个管理员用户: groupadd postgres mkdir /home/postgres useradd postgres -g postgres -s /bin/bash -b /hom

PostgreSQL数据库中跨库访问解决方案

PostgreSQL跨库访问有3种方法:Schema,dblink,postgres_fdw. 方法A:在PG上建立不同SCHEMA,将数据和存储过程分别放到不同的schema上,经过权限管理后进行访问. 方法A的示例如下: 测试1(测试postgres超级用户对不同schema下对象的访问) 查看当前数据库中的schema postgres=# \dn List of schemas Name | Owner -------------------+--------- dbms_job_pro

PostgreSQL[9.4-9.6]——服务器管理

一.编译安装: 环境准备: GNU make 版本 >=3.8 (make --version) ISO/ANSI C 编译器,至少須兼容 C89 标准,GCC 或 intel 編译器等均可 gzip .bzip2 .tar ,源码解包 GNU Readline 库,用于 psql 操作历史命令 安全相关模块:Kerberos.OpenSSL.OpenLDAP.PAM 等,需要事先安装好对应的包 如果要使用 PL/Python.PL/Perl.PL/Tcl 等过程語言,須保証語言本身及相关的开发

PowerDesigner反向工程PostgreSQL数据库

1. 环境准备: a)         安装PowerDesigner,以PowerDesigner15.1为例 b)         安装java jdk,以jdk-7-windows-i586为例 c)         下载postgressql jdbc驱动jar包,以postgresql-8.1-415.jdbc2.jar为例 2. 远程连接PostgreSQL数据库 a)         打开PowerDesigner b)         新建一个空白物理数据模型 点击PowerDe

广州postgresql用户会技术交流会小记 2015-9-19

广州postgresql用户会技术交流会小记  2015-9-19 今天去了广州postgresql用户会组织的技术交流会 分别有两个session 第一个讲师介绍了他公司使用postgresql -X2的情况 第二个讲师介绍了postgresql里面的一些执行计划分析 我个人比较关注第一个session,因为涉及到真正的应用案例 网上有对postgresql -X2的简短介绍,我先转载过来 转载:http://francs3.blog.163.com/blog/static/405767272