ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

更新mysql 5.5服务器上的系统时间有任何风险吗?

2019-08-06 20:51:26  阅读:277  来源: 互联网

标签:linux mysql time replication mysql-5-5


我们刚刚发现我们的一个mysql系统没有运行ntp,结果是时间有点漂移了.

如果我启用ntp,并在系统运行时同步时间是否有任何可能的问题?目前主人大约慢了4分钟,而奴隶大约落后3:45.

解决方法:

随着Master上时钟时间的变化

>奴隶可能会丢失数据
> slave可以重播已经处理的查询

您应该安排短暂的停机时间,而不是冒这些极端风险.

这是你应该做的:

步骤01:停止对Master的所有写入

SET GLOBAL read_only = 1;
FLUSH TABLES WITH READ LOCK;

步骤02:确保主机上的写入已停止

SHOW MASTER STATUS;

你可能会看到这样的东西

mysql> show master status;
+----------------+----------+--------------+------------------+-------------------+
| File           | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+----------------+----------+--------------+------------------+-------------------+
| bin-log.005956 | 59702913 |              | dba              |                   |
+----------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

mysql>

运行几次,确保没有运行

步骤03:在Master(和Slave,如果需要)上设置时钟时间

步骤04:在奴隶上,运行几次

SHOW SLAVE STATUS\G

确保

> Seconds_Behind_Master为0
> Read_Master_Log_File没有改变
> Relay_Master_Log_File没有改变
> Exec_Master_Log_Pos没有改变

步骤04:在Slave上运行以下命令

STOP SLAVE;
CHANGE MASTER TO master_log_file='bin-log.000001',master_log_pos=4;

步骤05:在主人身上,跑

RESET MASTER;

这将清除Master上的所有binlog,并从一个新的binlog开始

第06步:在奴隶身上,

START SLAVE; DO SLEEP(5); SHOW SLAVE STATUS\G

确保Seconds_Behind_Master为0

第07步:在师父身上,

UNLOCK TABLES;

而已.

这样做最好只是在现场系统上翻转时钟

我在大约1.5年前(Risk of changing clocktime on MySQL server host)建议了这个

标签:linux,mysql,time,replication,mysql-5-5
来源: https://codeday.me/bug/20190806/1603277.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有