已有的一个 MySQL PXC 集群环境,因为种种原因仅剩一个节点 node1,需要新增一个集群节点 node2。

node1 版本:donor version (8.0.21)

node2 版本:local version (8.0.32)

大致步骤:

1、node2 配置部署新版本的集群环境;

2、node2 配置/etc/my.cnf

拷贝 node1 的配置文件,仅需修改serverid、nodename

3、node2 准备数据目录,确保目录为空

4、node2 启动服务

会提示报错,需要将 node1 的 *.pem 文件拷贝到新节点,再次启动即可。

本次遇见一个低级错误,顺便看一下启动过程日志如下:

开始是使用那些pem文件握手连接,并执行数据同步,之后是升级:
2023-07-26T01:47:42.264423Z 1 [System] [MY-013413] [Server] Data dictionary upgrade from version '80021' to '80023' completed.
2023-07-26T01:47:50.295523Z 4 [System] [MY-013381] [Server] Server upgrade from '80021' to '80032' completed.
后面的启动尽管报错,但无需再次升级数据:
2023-07-26T01:50:51.621940Z 0 [Note] [MY-000000] [WSREP-SST] Proceeding with SST.........
2023-07-26T01:50:51.670240Z 0 [Note] [MY-000000] [WSREP-SST] ............Waiting for SST streaming to complete!
2023-07-26T01:51:15.992054Z 0 [Note] [MY-000000] [Galera] 0.0 (node1): State transfer to 1.0 (node2) complete.
2023-07-26T01:51:15.993423Z 0 [Note] [MY-000000] [Galera] Member 0.0 (node1) synced with group.
2023-07-26T01:51:15.998986Z 0 [Note] [MY-000000] [WSREP-SST] Preparing the backup at /mysql/pxc/data//sst-xb-tmpdir
2023-07-26T01:51:17.808995Z 0 [Note] [MY-000000] [WSREP-SST] Moving the backup to /mysql/pxc/data/
2023-07-26T01:51:17.929261Z 0 [Note] [MY-000000] [WSREP-SST] Running post-processing...........
2023-07-26T01:51:17.938459Z 0 [Note] [MY-000000] [WSREP-SST] Opting for mysql_upgrade (sst): local version (8.0.32) != donor version (8.0.21)
2023-07-26T01:51:18.030688Z 0 [Note] [MY-000000] [WSREP-SST] Waiting for server instance to start..... This may take some time
2023-07-26T01:51:31.230189Z 0 [ERROR] [MY-000000] [WSREP-SST] ******************* FATAL ERROR **********************
2023-07-26T01:51:31.230243Z 0 [ERROR] [MY-000000] [WSREP-SST] Failed to start the mysql server that checks for async replication.
2023-07-26T01:51:31.230251Z 0 [ERROR] [MY-000000] [WSREP-SST] Check the parameters and retry
2023-07-26T01:51:31.230255Z 0 [ERROR] [MY-000000] [WSREP-SST] Line 521 pid:6129
2023-07-26T01:51:31.232347Z 0 [ERROR] [MY-000000] [WSREP-SST] ------------ mysql error log (START) ------------
---- Starting the MySQL server used for post-processing ----
2023-07-26T01:51:18.237305Z 0 [Warning] [MY-011068] [Server] The syntax 'wsrep_slave_threads' is deprecated and will be removed in a future release. Please use wsrep_applier_threads instead.
2023-07-26T01:51:18.237360Z 0 [Warning] [MY-011068] [Server] The syntax 'skip_slave_start' is deprecated and will be removed in a future release. Please use skip_replica_start instead.
2023-07-26T01:51:18.237435Z 0 [Warning] [MY-010097] [Server] Insecure configuration for --secure-file-priv: Current value does not restrict location of generated files. Consider setting it to a valid, non-empty path.
2023-07-26T01:51:18.237441Z 0 [Warning] [MY-010097] [Server] Insecure configuration for --secure-log-path: Current value does not restrict location of generated files. Consider setting it to a valid, non-empty path.
2023-07-26T01:51:18.237480Z 0 [Warning] [MY-000000] [WSREP] Node is not a cluster node. Disabling pxc_strict_mode
2023-07-26T01:51:18.238775Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.32-24.2) starting as process 6129
2023-07-26T01:51:18.240915Z 0 [Warning] [MY-013242] [Server] --character-set-server: 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous.
2023-07-26T01:51:18.243886Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2023-07-26T01:51:18.243929Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
2023-07-26T01:51:18.249172Z 0 [Warning] [MY-010075] [Server] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: e9aa301e-2b56-11ee-a47e-000c2948ee39.
2023-07-26T01:51:18.254102Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-07-26T01:51:18.446220Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-07-26T01:51:18.461620Z 1 [System] [MY-011090] [Server] Data dictionary upgrading from version '80021' to '80023'.
2023-07-26T01:51:20.020760Z 1 [System] [MY-013413] [Server] Data dictionary upgrade from version '80021' to '80023' completed.
2023-07-26T01:51:20.288653Z 1 [Note] [MY-000000] [WSREP] wsrep_init_schema_and_SR (nil)
2023-07-26T01:51:22.618990Z 4 [System] [MY-013381] [Server] Server upgrade from '80021' to '80032' started.
2023-07-26T01:51:27.913366Z 4 [System] [MY-013381] [Server] Server upgrade from '80021' to '80032' completed.
2023-07-26T01:51:27.991646Z 0 [System] [MY-010229] [Server] Starting XA crash recovery...
2023-07-26T01:51:28.163501Z 0 [System] [MY-010232] [Server] XA crash recovery finished.
2023-07-26T01:51:28.220564Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2023-07-26T01:51:28.220603Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
2023-07-26T01:51:28.221965Z 0 [Warning] [MY-011810] [Server] Insecure configuration for --pid-file: Location '/tmp' in the path is accessible to all OS users. Consider choosing a different directory.
报错日志:
2023-07-26T01:51:28.224149Z 0 [ERROR] [MY-000067] [Server] unknown variable 'cert.pem;socket.ssl_ca=ca.pem"'.
2023-07-26T01:51:28.224217Z 0 [ERROR] [MY-010119] [Server] Aborting
2023-07-26T01:51:30.216961Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.32-24.2) Percona XtraDB Cluster (GPL), Release rel24, Revision 2119e75, WSREP version 26.1.4.3.

可见报错的是配置文件错误!原因是多了一个换行符的低级错误,修改后即可。

之后正确的做法是将node1也升级为最新版本即可。

MySQL PXC集群新增一个高版本节点的更多相关文章

  1. MySQL PXC集群安装配置

    1.关闭防火墙 [root@node04 ~]#systemctl disable firewalld [root@node04 ~]#systemctl stop firewalld [root@n ...

  2. Docker 搭建pxc集群 + haproxy + keepalived 高可用(二)

    上一节我们有了两个分片的pxc集群,这一节我们接着安装haproxy和keepalived的实现集群的高可用 一.先下载haproxy的镜像 [root@localhost ~]# docker pu ...

  3. Docker 搭建pxc集群 + haproxy + keepalived 高可用(一)

    一.首先需要安装好docker,安装方法可以参考之前一篇博文Centos7安装docker [root@localhost ~]# systemctl start docker [root@local ...

  4. MySQL PXC集群部署

    安装 Percona-XtraDB-Cluster 架构: 三个节点: pxc_node_0 30.0.0.196 pxc_node_1 30.0.0.198 pxc_node_2 30.0.0.19 ...

  5. docker中mysql pxc集群

    PXC集群 https://hub.docker.com/r/percona/percona-xtradb-cluster 安装PXC镜像 下载镜像或者导入本地镜像 docker pull perco ...

  6. docker 中搭建 mysql pxc 集群

      一.docker中创建pxc 容器 1.拉取PXC 镜像 pull docker pull percona/percona-xtradb-cluster:5.7.21 2.更改镜像名称为pxc t ...

  7. mysql PXC集群方案总结

    同时写集群内的所有机器 写性能依赖最慢的那个机器 读性能提高X倍

  8. docker mysql pxc集群(percona-xtradb-cluster)

    docker pull percona/percona-xtradb-cluster docker tag percona/percona-xtradb-cluster pxc docker netw ...

  9. MySQL之PXC集群搭建

    一.PXC 介绍 1.1 PXC 简介 PXC 是一套 MySQL 高可用集群解决方案,与传统的基于主从复制模式的集群架构相比 PXC 最突出特点就是解决了诟病已久的数据复制延迟问题,基本上可以达到实 ...

  10. Spark集群新增节点方法

    Spark集群处理能力不足需要扩容,如何在现有spark集群中新增新节点?本文以一个实例介绍如何给Spark集群新增一个节点. 1. 集群环境 现有Spark集群包括3台机器,用户名都是cdahdp, ...

随机推荐

  1. 【论文阅读】CYCADA CYCLE-CONSISTENT ADVERSARIAL DOMAIN ADAPTATION

    github code CyCADA论文中,定义了一种问题--无监督适配,即仅提供源数据 \(X_S\) 和源标签 \(Y_S\),以及源域目标数据\(X_T\),没有目标标签或者不利用它.问题的目的 ...

  2. instance norm

    与Batch Norm加快计算收敛不同, IN是在[1]中提出的,目的是提高style transfer的表现. 计算如下: \[IN(x)=\gamma (\frac{x-\mu(x)}{\sigm ...

  3. 也谈Python编码格式

    python在升级到Python3之后,因为Utf-8作为没有歧义的统一标准编码,相信很少人再会碰到编码格式的问题,但现实总会不停地打脸理想,告诉我们Too Young Too Simple.先不扯闲 ...

  4. 前端热力图组件heatMapGD中国地图 中国热力地图 广东省热力地图 广东省地图 地市选择

    快速实现前端中国热力地图 广东省热力地图 广东省地图, 请访问uni-app插件市场地址:https://ext.dcloud.net.cn/plugin?id=12407 # china 广东省热力 ...

  5. 发布一个Visual Studio 2022 插件,可以自动完成构造函数依赖注入代码

    赖注入(DI)在开发中既是常见的也是必需的技术.它帮助我们优化了代码结构,使得应用更加灵活.易于扩展,同时也降低了各个模块之间的耦合度,更容易进行单元测试,提高了编码效率和质量.不过,手动注入依赖项也 ...

  6. Bean生命周期的扩展点:Bean Post Processor

    摘要:在本篇文章中,我们将深入探讨Spring框架中的重要组件--BeanPostProcessor.首先,我们将了解其设计理念和目标,然后通过实际的例子学习如何基础使用它,如何通过BeanPostP ...

  7. animation动画+关键帧实现轮播图效果(再次学习)!

    再次遇到要实现轮播图效果的时候,发现还是不怎么会,因为对js还没有熟练使用,只希望使用h5和css3实现效果 虽然之前已经学习了一遍了,但是还是不熟练,再次学习一下了 这次的可作为套板使用,无序列表为 ...

  8. 基于SM4和LSB算法实现图片数字水印加密软件(密码赛)

    一.前言 密码赛和星火杯时做的小项目,密码赛的时候是个半成品,没有过初赛,星火杯之前完善了 设计思路 最开始是想做一个图片水印用作对图片来源的不可否认性做保护,又考虑保护数据完整性,因此选中了易损水印 ...

  9. PowerShell:因为在此系统上禁止运行脚本,解决方法

    解决方案 get-executionpolicy set-executionpolicy remotesigned 输入Y 至此问题解决

  10. python-gitlab 一个简单demo

    背景 需要收集git仓库信息到数据库供前端展示 包括:仓库信息.仓库所有者.成员列表.提交信息.活跃情况等 需要定时启动.灵活触发 实现简介 使用gitlab v4 restful 接口 使用pyth ...