Mysql挂掉怎么办

思路

从库处理,relaylog,讲从库升级主库。

待主机恢复后,主机替换为从库。

具体操作

简介:

主库宕机 Master DOWN机-企业场景一主多从宕机从库切换主继续和从同步过程详解

登陆从库,show processlist;

查看两个线程的更新状态;

查看所有从库中,查看

/application/mysql-5.6.20/data/mysql.info

确保更新完毕,看看两个从库中哪个库最快,经过测试没有延迟的情况POS差距很小,甚至一致的

然后选取其中POS最大的作为主库

1、确保所有relay log 全部更新完毕

在每个从库上执行 stop slave io_thread; show processlist;

直到看到Has read all relay log;表示从库更新执行完毕:

2、登陆POS值最大的从库执行如下命令:

mysql -uroot -p123456 -S /application/mysql-5.6.20/mysql.sock

stop slave;

retset master;

quit;

3、进到数据库数据目录,删除master.info relay-log.info

cd /application/mysql-5.6.20/data

rm -f master.info relay-log.info

检查授权表,read-only等参数

4、提升从库为主库

vim /application/mysql-5.6.20/my.cnf

开启:

log-bin = /application/mysql-5.6.20/mysql-bin

//如果不存在log-slave-updates read-only等一定要注释掉它。

/application/mysql-5.6.20/mysql restart

到此为止,提升主库完毕。

5、如果主库服务器没宕机,需要去主库binlog补全,提升主库为从库

6、其他从库操作

已检查(同步user rep均存在)

登陆从库

stop slave

cahnge master to master_host='10.0.0.7; // 如果不同步,就指定位置点

start slave;

show slave status\G

7、修改程序的配置文件从主数据库到从数据库(现在新的主库)

复制代码
  平时访问数据库用域名,则直接可以修改hosts解析

8、修理损坏的主库,完成后作为从库使用,或者切换

我们现在讲的是主库意外宕机,例如我们有计划切换,怎么做呢?

1)主库锁表

2)登陆所有的库查看同步状态,是否完成

后面操作与前面同1至4步骤

相关推荐
这个DBA有点耶2 小时前
NULL不是空——数据库里最反直觉的设计,90%新人踩过的坑
数据库·mysql·代码规范
这个DBA有点耶1 天前
SQL改写进阶:标量子查询的“隐形代价”与消除实战
数据库·mysql·架构
smallyoung1 天前
数据库乐观锁深度解析:MySQL、PostgreSQL 实战 + Spring Boot 集成指南
数据库·mysql·postgresql
数据技术说1 天前
MySQL 迁移实战——如何实现真正的"零改造"平滑切换
mysql
唐青枫5 天前
MySQL JSON 实战详解:从存储、查询、更新到 JSON_TABLE 与索引
sql·mysql
小满8785 天前
5.Mysql事务隔离级别与锁机制
mysql
元Y亨H6 天前
技术笔记:MySQL 字符集排序规则与大小写敏感性问题解决方案
mysql
这个DBA有点耶7 天前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵7 天前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
SamDeepThinking7 天前
一条UPDATE语句在MySQL 8.0中到底加了几把锁?
后端·mysql·程序员