postgresql9.6.5升级

本文提供了一步一步的指导方案来将 PostgreSQL 从 9.6.5 升级到 9.6.20 的过程。升级过程中保持了数据目录不变,并详细介绍了从下载新版本、编译安装到最终验证升级成功的全过程。

postgresql9.6.5 升级为9.6.20  ,升级软件版本而数据目录不变,此方法不适用于跨大版本升级!

原数据库安装目录:prefix=/usr/local/pgsql

数据目录PGDATA=/data/postgres/data

升级步骤:

1.上传文件包postgresql-9.6.20.tar.gz 至/opt/

2.解压 tar -xvf postgresql-9.6.20.tar.gz   

3.创建目录   mkdir /usr/local/pgsql9.6.20

4.编译安装软件

cd   postgresql-9.6.20

./configure --prefix=/usr/local/pgsql9.6.20

make 

make install

5.授权目录 chown  -R postgres:postgres  /usr/local/pgsql9.6.20

chown -R  postgres:postgres  postgresql-9.6.20

5.停原来的数据库

/etc/init.d/postgresql  stop

备份命令 cp /etc/init.d/postgresql  /etc/init.d/postgresql_backup  (可选择导出数据备份)

6.修改/etc/init.d/postgresql命令文件安装目录

# Installation prefix

vi /etc/init.d/postgresql 

prefix=/usr/local/pgsql     改为:prefix=/usr/local/pgsql9.6.20

 

7.启动数据库

/etc/init.d/postgresql  start

8.验证

su - postgresql

更改环境变量(修改软件安装目录)

登录数据库检查升级是否成功,验证数据(例如查看test表数据)

[postgres@pgdb-es2 ~]$

[postgres@pgdb-es2 ~]$ psql

psql (9.6.20)

Type "help" for help.

postgres=# \c testdb

You are now connected to database "testdb" as user "postgres".

testdb=#

testdb=# select * from test;

a | name

---+------

1 | bai

2 | bai

3 | bai

4 | bai

5 | bai

(5 rows)

已升级成功。

 

 

 

 

 

 

 

 

### 如何升级 PostgreSQL 终端工具或客户端 #### 升级方法概述 PostgreSQL 的终端工具通常指的是 `psql` 工具,它是 PostgreSQL 数据库的主要交互式命令行界面。要升级 PostgreSQL 的终端工具或客户端,可以通过重新安装更高版本PostgreSQL 或单独更新 `psql` 来实现。 --- #### 方法一:通过包管理器升级 PostgreSQL 客户端 如果操作系统使用的是基于 Linux 的发行版(如 Ubuntu、CentOS),可以利用系统的包管理器来升级 PostgreSQL 客户端: 对于 Debian/Ubuntu 系统: ```bash sudo apt update sudo apt install --only-upgrade postgresql-client ``` 对于 RedHat/CentOS/Fedora 系统: ```bash sudo yum check-update sudo yum upgrade postgresql-contrib ``` 此过程会自动下载并安装最新版本的 `psql` 及其依赖项[^1]。 --- #### 方法二:手动编译安装新版本PostgreSQL 客户端 当需要特定版本PostgreSQL 客户端时,可以选择从源码编译安装: 1. 下载最新的 PostgreSQL 源代码: ```bash wget https://ftp.postgresql.org/pub/source/v14.2/postgresql-14.2.tar.gz tar -zxvf postgresql-14.2.tar.gz cd postgresql-14.2 ``` 2. 编译并仅安装客户端组件: ```bash ./configure --without-readline make -C src/bin all sudo make -C src/bin install ``` 完成以上步骤后,新的 `psql` 将会被安装到 `/usr/local/bin/psql` 中[^3]。 --- #### 方法三:跨平台可移植方式——使用 Docker 镜像 Docker 提供了一种简单的方式来获取最新版本PostgreSQL 客户端而无需更改现有环境。运行以下命令即可启动带有最新 `psql` 的容器: ```bash docker run --rm -it postgres:latest bash psql --version ``` 这允许用户快速测试不同版本的 `psql` 而不影响主机上的安装状态。 --- #### 注意事项 在执行任何升级之前,请确认当前使用的 PostgreSQL 版本以及兼容性需求: ```bash psql --version ``` 此外,在某些情况下可能还需要调整配置文件中的参数以匹配新版行为模式,比如修改 `pg_hba.conf` 和其他安全设置[^2]。 --- ### 示例代码展示 以下是验证已成功升级后的简单 SQL 测试脚本: ```sql -- 登录至数据库实例 \connect demo; -- 查看服务端编码格式是否一致 SHOW SERVER_ENCODING; SHOW CLIENT_ENCODING; -- 插入一条记录检验字符集转换情况 INSERT INTO test VALUES (1, '中文测试', NOW()); SELECT * FROM test WHERE id = 1; ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值