`
LJ你是唯一LT
  • 浏览: 244025 次
社区版块
存档分类
最新评论

pg_upgrade升级数据库9.1.1-9.4.5

阅读更多
实际操作:

已有环境和pg
192.168.12.231   pg9.1.1
端口 5432 
安装目录 /pgtina
数据目录 /pgtina/data

1、在本机器上安装9.4.5 
端口 1922   --随意指定,但不可与之前的一样
安装目录 /pgnew
数据目录 /pgnew/data
    
./configure --prefix=/pgnew  --with-pgport=1922 && gmake world && gmake install-world
安装时候记得带world,内外模块都要,不然找不到pg_upgrade


2、修改属主
[root@datanode1 /]# chown -R postgres:postgres pgnew
[root@datanode1 /]# chmod 700 /pgnew
[postgres@datanode1 pgtina]$ chmod 700 data

3、初始化新库
[postgres@datanode1 pgnew]$ mkdir data
[postgres@datanode1 pgnew]$ /pgnew/bin/initdb -E UTF8 -D /pgnew/data --locale=C -U postgres -W   ---初始化locale指定错误,按照下面的来

4、修改pg_hba.cof
因为升级需要多次连接新老集群数据库实例, 所以修改为使用本地trust认证.
postgres@localhost-> vi /pgdata01/pg_root/pg_hba.conf
postgres@localhost-> vi /pgdata01/pg_root_9.4/pg_hba.conf
local   all             all                                     trust
host    all             all             127.0.0.1/32            trust

5、修改postgresql.conf
   注意使用不同的监听端口. (PostgreSQL 9.4新增)

6、停止旧库
pg_ctl -D /pgtina/data stop

7、9.4的pg_upgrade检测兼容性
[postgres@datanode1 data]$ /pgnew/bin/pg_upgrade -c --link -b /pgtina/bin  -B /pgnew/bin -d /pgtina/data -D /pgnew/data -p 5432 -P 1922 -U postgres
Performing Consistency Checks
-----------------------------
Checking cluster versions                                   ok

*failure*
Consult the last few lines of "pg_upgrade_server.log" for
the probable cause of the failure.

connection to database failed: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/pgnew/data/.s.PGSQL.5432"?   ---之前/data目录的权限不是700,修改后就好了

could not connect to old postmaster started with the command:
"/pgtina/bin/pg_ctl" -w -l "pg_upgrade_server.log" -D "/pgtina/data" -o "-p 5432 -b  -c listen_addresses='' -c unix_socket_permissions=0700 -c unix_socket_directory='/pgnew/data'" start
Failure, exiting   
----检测失败

重新初始化:
[postgres@datanode1 data]$ /pgnew/bin/pg_upgrade -c --link -b /pgtina/bin  -B /pgnew/bin -d /pgtina/data -D /pgnew/data -U postgres
Performing Consistency Checks
-----------------------------
Checking cluster versions                                   ok
Checking database user is a superuser                       ok
Checking database connection settings                       ok
Checking for prepared transactions                          ok
Checking for reg* system OID user data types                ok
Checking for contrib/isn with bigint-passing mismatch       ok
Checking for invalid "line" user columns                    ok

lc_collate cluster values do not match:  old "en_US.UTF-8", new "C"
Failure, exiting

初始化的时候出了问题:
删除data目录,重新做一次初始化
/pgnew/bin/initdb -E UTF8 -D /pgnew/data --locale=en_US.UTF-8 -U postgres -W
[postgres@datanode1 data]$ /pgnew/bin/pg_upgrade -c --link -b /pgtina/bin  -B /pgnew/bin -d /pgtina/data -D /pgnew/data -U postgres
Performing Consistency Checks
-----------------------------
Checking cluster versions                                   ok
Checking database user is a superuser                       ok
Checking database connection settings                       ok
Checking for prepared transactions                          ok
Checking for reg* system OID user data types                ok
Checking for contrib/isn with bigint-passing mismatch       ok
Checking for invalid "line" user columns                    ok
Checking for presence of required libraries                 ok
Checking database user is a superuser                       ok
Checking for prepared transactions                          ok

*Clusters are compatible*

8、升级
/pgnew/bin/pg_upgrade  --link -b /pgtina/bin  -B /pgnew/bin -d /pgtina/data -D /pgnew/data -U postgres -j 8 -k -r -v 去掉了-c
升级成功后,日志文件被自动删除,可以在命令行中用-r参数指定保留。

9、升级完成:
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
   
10、启动新库
/pgnew/bin/pg_ctl -D /pgnew/data start

11、登录查看
[postgres@datanode1 data]$ psql -h 127.0.0.1 -U postgres -p 1922   ---不能直接使用psql,要指定位置才行。
psql (9.1.1, server 9.4.5)
WARNING: psql version 9.1, server version 9.4.
         Some psql features might not work.
Type "help" for help.

postgres=#

[postgres@datanode1 data]$ /pgnew/bin/psql -p 1922 -U postgres
psql (9.4.5)
Type "help" for help.

postgres=#

12、分析全库
[postgres@datanode1 data]$ "/pgnew/bin/vacuumdb" -U "postgres" --all --analyze-only -p 1922
vacuumdb: vacuuming database "postgres"
vacuumdb: vacuuming database "template1"
vacuumdb: vacuuming database "tina"

13、连接查看--正常
[postgres@datanode1 data]$ /pgnew/bin/pg_ctl reload -D /pgnew/data
server signaled


分享到:
评论

相关推荐

    Python库 | pip_upgrade_tool-0.3.1-py3-none-any.whl

    `pip_upgrade_tool`很可能提供了一些增强的功能,比如自动化升级项目中的所有依赖到最新版本,或者按照特定的策略(例如只升级过期的依赖)进行升级,这对于维护大型项目或者多个项目的依赖一致性非常有用。...

    bugly_crashreport_upgrade-1.4.2.aar

    bugly sdk

    PyPI 官网下载 | pip_upgrade_tool-0.3.1-py3-none-any.whl

    资源来自pypi官网。 资源全名:pip_upgrade_tool-0.3.1-py3-none-any.whl

    华为云计算FusionCompute8 8.0.1 8.0.1.SPH2 FusionSphere8 全套资源

    文件列表: FusionCompute8.0.0目录 FusionCompute_Installer-8.0.0.zip -...FusionCompute 8.0.1.SPH2_Upgrade.zip --------- 8.0.1.SPH2升级包 FusionComputeUpdateTool_8.0.1.SPH2.zip --------- 8.0.1.SPH2升级工具

    Python库 | pip_upgrade_tool-0.5.1-py3-none-any.whl

    资源分类:Python库 所属语言:Python 资源全名:pip_upgrade_tool-0.5.1-py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    a ml_upgrade_package.img

    中兴B860AV2.1-T刷机固件包,下载固件 a ml_upgrade_package.img 本人花钱购买学习测试有效

    ADM326_-_2006-Q2_-_Ltr_-_Upgrade_to_ECC_6.0__mySAP_ERP_2005

    根据提供的文件信息,本文将详细解析与升级到 SAP ECC 6.0 (mySAP ERP 2005) 相关的关键知识点。 ### 一、SAP ECC 6.0 (mySAP ERP 2005) 升级概述 #### 1.1 SAP ECC 6.0 (mySAP ERP 2005) 介绍 SAP ECC 6.0 (mySAP...

    3518C_SP1024X768_full_evb3561sv_w_65_3518-ota-20200716_HIFI.zip

    6. "axy_mcu_upgrade.bin" - 可能是微控制器单元(MCU)的升级文件,用于更新设备中的微控制器固件。 7. "armkeyword.bin" - 与ARM架构相关的密钥文件,可能用于加密或身份验证。 8. "system.new.dat" 和 "system....

    1GPON_V1.0.00.488_UPGRADE_BOOTLDR_ALL-vxlan_1215-16.bin

    1GPON_V1.0.00.488_UPGRADE_BOOTLDR_ALL-vxlan_1215-16.bin

    Dual_Trix_Upgrade2 - MetaTrader 5脚本.zip

    《MetaTrader 5中的Dual Trix指标升级版详解》 MetaTrader 5(MT5)是全球金融市场中广泛使用的交易平台,它提供了丰富的交易工具、技术分析功能以及自定义指标的选项,以满足不同投资者的需求。在MT5平台中,用户...

    PyPI 官网下载 | django_upgrade-1.0.0-py3-none-any.whl

    “django_upgrade-1.0.0-py3-none-any.whl”是一个针对Django框架的升级工具,主要用于帮助开发者将旧版本的Django代码平滑过渡到新版本。这个资源的命名结构清晰地揭示了它的信息:“django_upgrade”表明这是一个...

    3560_full_evb3561sv_w_65_m0-ota-20200515_DSP.zip

    - axy_mcu_upgrade.bin:可能是一个微控制器(MCU)的固件升级文件,用于更新设备中某些特定的微控制器程序。 - logo.bin:启动时显示的品牌或系统标志,可能包含设备开机画面。 - armkeyword.bin:可能与ARM架构...

    AmendH_ELF_Upgrade_v1.1_complianceTests_v1.0.0.1-2019_09_18.7z

    标题“AmendH_ELF_Upgrade_v1.1_complianceTests_v1.0.0.1-2019_09_18.7z”揭示了一个针对“GP附录H测试规范”的升级版本,这表明我们正在处理的是一个与Java卡全球平台(Global Platform, GP)相关的软件更新或测试...

    NetBackup_中文文档7.7.1

    |-- NetBackup_7.7.1_Upgrade_Guide.pdf |-- NetBackup_AdminGuide_Cloud.pdf |-- NetBackup_AdminGuide_Hyper-V.pdf |-- NetBackup_AdminGuide_MSExchg.pdf |-- NetBackup_AdminGuide_MSSQL.pdf |-- NetBackup_...

    p28412269_112040_MSWIN-x86-64.zip

    SET COLLECTION TYPE AS A BIND VARIABLE IS VERY SLOW AFTER UPGRADE TO 11.2.0.4 18166577 JAVA STORED PROCEDURE FAILS WITH ORA-29532 IN 11.2.0.4 18458318 LOW QUALITY FONT IMAGE FILE CREATED USING JAVA ...

    psqlodbc_09_03_0300-x64-1.zip

    标题“psqlodbc_09_03_0300-x64-1.zip”和描述“psqlodbc_09_03_0300-x64-1”暗示了这是一个与PostgreSQL数据库相关的ODBC驱动程序的安装包,适用于64位操作系统。"psqlodbc"是PostgreSQL的ODBC(Open Database ...

    mysql_upgrade.exe 5.7.26版本

    mysql_upgrade -u root -p

    泰格商霸V7升级包

    db_upgrade.exe -- 数据库升级程序,版本升级时使用 app_fix.exe -- 泰格工具软件,提供以下功能: a、终止数据库假连接 b、数据库重新安装时恢复泰格数据库 c、检查数据库并自动修复错误 d、修改操作员密码 e...

Global site tag (gtag.js) - Google Analytics