MySQL集群升级从5.5版本升级到10.*以上版本(CentOS7.5 MariaDB集群升级)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: MySQL集群升级从5.5版本升级到10.*以上版本(CentOS7.5 MariaDB集群升级)

最近由于数据库迁移合并原因,导致集群数据库版本不兼容现有数据库,因此打算升级MySQL集群数据库版本从5.5升级到10.4

硬件信息:CentOS Linux release 7.5.1804 (Core)

主数据库:172.16.116.40

从数据库:172.16.116.42、172.16.116.43

MySQL集群的搭建可以参考:CentOS7.5实现MySQL集群-主从服务器搭建(一主多从)

安装


安装过程在各个主从节点中都需要执行,安装前记得先备份数据库

修改存储器配置,以便系统软件包管理器能够正确安装MariaDB10

curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash

image.png

登录到数据库设置innodb_fast_shutdown到0。可以使用SET GLOBAL进行动态更改,

  • 设置为0:会做清除脏页和插入缓冲区的合并操作,也会将脏页全部刷新到磁盘上面去,但是这个时候关闭的速度也是最慢的,此时数据完整性能得到最大保障
  • 设置为1:关闭MySQL的时候不会做清除脏页和插入缓冲区的合并操作,也不会将脏页刷新到磁盘
  • 设置为2:不会做清除脏页和插入缓冲区的合并操作,也不会将脏页刷新到磁盘,但是会刷新到redo log里面,再下次启动mysql的时候恢复
mysql -uroot -p    # 登录数据库
SET GLOBAL innodb_fast_shutdown=0;    # 设置innodb_fast_shutdown
SHOW GLOBAL VARIABLES LIKE '%innodb_fast_shutdown%';    # 查看innodb_fast_shutdown

image.png

停止MariaDB

 systemctl stop mariadb    # 关闭mariadb
 systemctl status mariadb    # 查看mariadb状态

image.png

卸载旧版本MariaDB

sudo yum remove MariaDB-server

image.png

安装新版本的MariaDB,中途提示选y

sudo yum install MariaDB-server

20200106150103559.png

此时集群相关的依赖程序(Galera wsrep)也会被安装

20200106150400937.png

启动MariaDB,然后执行mysql_upgrade,此时需要选择--skip-write-binlog选项

  • 确保mysql数据库中的系统表与新版本完全兼容
  • 快速检查所有表并将其标记为与新版本的MariaDB兼容
systemctl start mariadb    # 启动mariadb
mysql_upgrade --skip-write-binlog --force -uroot -p    # 执行mysql_upgrade

此时系统会自动执行以下几个步骤,等待执行完成就好:

Checking and upgrading mysql database

Running 'mysql_fix_privilege_tables'

Fixing table and database names

Checking and upgrading tables

Running 'FLUSH PRIVILEGES'

至此集群升级安装已完成,更多系统版本升级可参考:Upgrading from MariaDB Galera Cluster 5.5 to MariaDB Galera Cluster 10.0

恢复主从节点工作


在主服务器进入mysql,查看主节点状态,记住File和Position

show master status;

image.png

在从服务器进入mysql,停止并重置从节点,然后在从节点中配置主节点信息(保险每个从节点中都进行一下)

stop slave;    # 停止从节点
reset slave;    # 重置从节点
CHANGE MASTER TO
-> MASTER_HOST='172.16.116.40', # 主服务器ip
-> MASTER_USER='master', # 主服务器上创建的用户
-> MASTER_PASSWORD='你配置的主服务器密码', # 密码
-> MASTER_LOG_FILE='mysql-bin-40.000001', # 为master中的二进制日志文件,刚刚记住的File
-> MASTER_LOG_POS=565; # 刚刚记住的Position

image.png

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
6月前
|
负载均衡 算法 关系型数据库
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
本文聚焦 MySQL 集群架构中的负载均衡算法,阐述其重要性。详细介绍轮询、加权轮询、最少连接、加权最少连接、随机、源地址哈希等常用算法,分析各自优缺点及适用场景。并提供 Java 语言代码实现示例,助力直观理解。文章结构清晰,语言通俗易懂,对理解和应用负载均衡算法具有实用价值和参考价值。
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
|
1月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
320 5
|
2月前
|
安全 关系型数据库 MySQL
CentOS 7 yum 安装 MySQL教程
在CentOS 7上安装MySQL 8,其实流程很清晰。首先通过官方Yum仓库来安装服务,然后启动并设为开机自启。最重要的环节是首次安全设置:需要先从日志里找到临时密码来登录,再修改成你自己的密码,并为远程连接创建用户和授权。最后,也别忘了在服务器防火墙上放行3306端口,这样远程才能连上。
523 16
|
3月前
|
存储 关系型数据库 MySQL
在CentOS 8.x上安装Percona Xtrabackup工具备份MySQL数据步骤。
以上就是在CentOS8.x上通过Perconaxtabbackup工具对Mysql进行高效率、高可靠性、无锁定影响地实现在线快速全量及增加式数据库资料保存与恢复流程。通过以上流程可以有效地将Mysql相关资料按需求完成定期或不定期地保存与灾难恢复需求。
319 10
|
7月前
|
关系型数据库 MySQL Linux
CentOS 7系统下详细安装MySQL 5.7的步骤:包括密码配置、字符集配置、远程连接配置
以上就是在CentOS 7系统下安装MySQL 5.7的详细步骤。希望这个指南能帮助你顺利完成安装。
1768 26
|
7月前
|
负载均衡 算法 关系型数据库
大数据新视界--大数据大厂之MySQL数据库课程设计:MySQL集群架构负载均衡故障排除与解决方案
本文深入探讨 MySQL 集群架构负载均衡的常见故障及排除方法。涵盖请求分配不均、节点无法响应、负载均衡器故障等现象,介绍多种负载均衡算法及故障排除步骤,包括检查负载均衡器状态、调整算法、诊断修复节点故障等。还阐述了预防措施与确保系统稳定性的方法,如定期监控维护、备份恢复策略、团队协作与知识管理等。为确保 MySQL 数据库系统高可用性提供全面指导。
|
9月前
|
监控 关系型数据库 MySQL
云数据库:从零到一,构建高可用MySQL集群
在互联网时代,数据成为企业核心资产,传统单机数据库难以满足高并发、高可用需求。云数据库通过弹性扩展、分布式架构等优势解决了这些问题,但也面临数据安全和性能优化挑战。本文介绍了如何从零开始构建高可用MySQL集群,涵盖选择云服务提供商、创建实例、配置高可用架构、数据备份恢复及性能优化等内容,并通过电商平台案例展示了具体应用。
|
10月前
|
安全 关系型数据库 MySQL
CentOS7仅安装部署MySQL80客户端
通过上述步骤,你可以在CentOS 7上成功安装并配置MySQL 8.0客户端。这个过程确保你能够使用MySQL客户端工具连接和管理远程的MySQL数据库,而不需要在本地安装MySQL服务器。定期更新MySQL客户端可以确保你使用的是最新的功能和安全修复。
956 16
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
630 3
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
502 2