数据库
首页 > 数据库> > Yum将mysql从5.1升级到5.5

Yum将mysql从5.1升级到5.5

作者:互联网

我刚刚在“yum更新”服务器的过程中.它建议执行的更新之一是从mysql 5.1升级到5.5.

mysql服务器在另一个5.1 mysql实例的主 – 主复制设置中运行.我还会将其他主人更新为5.5,但希望始终保持在线状态.这个master还有一些从它复制的5.1 mysql slave.

有谁知道:

> yum update在5.1到5.5之间是安全的,无需大量数据重建
>如果上述复制设置将是一个问题.

编辑:
这是一个centos 5.4安装.然而,更新来自非标准的remi回购.

解决方法:

在升级到MySQL 5.5时,无法维护您的复制设置

你将不得不与主人/奴隶一起去.原因如下:

Someone asked a question about gibberish appearing in a binary log and I answered this question

在我的回答中,我解释了二进制日志从不同版本的MySQL中的不同位置开始

以下是这些职位:

对于MySQL 5.5> 107
> 10.1 for MySQL 5.1
> 98 for MySQL 5.0并返回

通过复制,这些数字也适用于中继日志.实际效果是Slave可以从旧版本的MySQL复制,但不是相反.

你最好做以下事情:

>将Master / Master转换为Master / Slave
>在Slave上升级到MySQL 5.5
>将所有应用程序指向Slave(现在称为NewMaster)
>服务mysql停在Master上
>在Master(现在称为NewSlave)上升级到MySQL 5.5但不启动mysql
>服务mysql在NewMaster上停止
> rsync NewMaster’s /var/lib/mysql to NewSlaves’s /var/lib/mysql
> NewMaster上的rm /var/log/mysql/master.info
> NewSlave上的rm /var/log/mysql/master.info
>服务mysql在NewMaster上启动–skip-networking
>在NewMaster上运行RESET MASTER
>在NewMaster上重启service mysql
>服务mysql在NewSlave上启动
>在NewSlave上运行RESET MASTER
>使用位置107作为启动master_log_pos设置主/主复制

关于使用百胜升级,我惊慌失措地惊恐地想着它.

这是我更保守的做法:

>我会mysqldump一切除了mysql架构.
>运行此命令为所有mysql用户授权生成SQL:

mysql -hhostaddr -umyuserid -pmypassword –skip-column-names -A -e“SELECT CONCAT(‘show”””””””””””””””””””””””””””””””””””” .user WHERE user<>”“| mysql -hhostaddr -umyuserid -pmypassword –skip-column-names -A | sed’s / $/; / g’> /root/MySQLGrants.sql
>卸载MySQL 5.1
>手动从RPM安装MySQL 5.5.
>将/root/MySQLGrants.sql加载到MySQL 5.5中
>将mysqldump数据加载回MySQL 5.5

标签:mysql,upgrade,mysql-5-5,mysql-5-1
来源: https://codeday.me/bug/20190805/1591442.html