文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

应该如何解决mysql数据库主从不同步

2024-04-02 19:55

关注

本篇文章给大家主要讲的是关于应该如何解决mysql数据库主从不同步的内容,感兴趣的话就一起来看看这篇文章吧,相信看完应该如何解决mysql数据库主从不同步对大家多少有点参考价值吧。

今天发现Mysql的主从数据库没有同步 

先上Master库: 

mysql>show processlist;   查看下进程是否Sleep太多。发现很正常。

show master status; 也正常。

 

mysql> show master status;

+-------------------+----------+--------------+-------------------------------+

| File              | Position | Binlog_Do_DB | Binlog_Ignore_DB              |

+-------------------+----------+--------------+-------------------------------+

| mysqld-bin.000001 |     3260 |              | mysql,test,information_schema |

+-------------------+----------+--------------+-------------------------------+

1 row in set (0.00 sec)

 

再到Slave上查看

 

mysql> show slave status\G                                                

 

Slave_IO_Running: Yes

Slave_SQL_Running: No

 

可见是Slave不同步

 

下面介绍两种解决方法:

  

方法一:忽略错误后,继续同步

该方法适用于主从库数据相差不大,或者要求数据可以不完全统一的情况,数据要求不严格的情况

 

解决: 

stop slave;

 

#表示跳过一步错误,后面的数字可变

set global sql_slave_skip_counter =1;

start slave;

 

之后再用mysql> show slave status\G  查看:

 

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

 

ok,现在主从同步状态正常了。。。

  

方式二:重新做主从,完全同步

该方法适用于主从库数据相差较大,或者要求数据完全统一的情况

 

解决步骤如下:

 

1.先进入主库,进行锁表,防止数据写入

 

使用命令:

 

mysql> flush tables with read lock;

 

注意:该处是锁定为只读状态,语句不区分大小写

 

2.进行数据备份 

 

#把数据备份到mysql.bak.sql文件

[root@server01 mysql]#mysqldump -uroot -p123456  -A> mysql.bak.sql

这里注意一点:数据库备份一定要定期进行,可以用shell脚本或者python脚本,都比较方便,确保数据万无一失

3.查看master 状态

 

mysql> show master status;

+-------------------+----------+--------------+-------------------------------+

| File              | Position | Binlog_Do_DB | Binlog_Ignore_DB              |

+-------------------+----------+--------------+-------------------------------+

| mysqld-bin.000001 |     3260 |              | mysql,test,information_schema |

+-------------------+----------+--------------+-------------------------------+

1 row in set (0.00 sec)

 

4.把mysql备份文件传到从库机器,进行数据恢复

 

#使用scp命令

[root@server01 mysql]# scp mysql.bak.sql root@192.168.128.101:/tmp/

 

5.停止从库的状态

mysql> stop slave;

  

6.然后到从库执行mysql命令,导入数据备份

 

mysql> source /tmp/mysql.bak.sql

 

7.设置从库同步,注意该处的同步点,就是主库show master status信息里的| File| Position两项

 

change master to master_host = '192.168.128.100', master_user = 'rsync', master_port=3306, master_password='123456', master_log_file = 'mysqld-bin.000001', master_log_pos=3260;

 

8.重新开启从同步

mysql> start slave;

 

9.查看同步状态

mysql> show slave status\G  查看:

 

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

 10.把主数据库的锁表,解开

  mysql>   unlock tables;

好了,同步完成啦。


#######主从同步&&&&&&&&&&&

把171配置为主(master)数据库云服务器

#vim /etc/my.cnf

[mysqld]

log-bin=master171

server_id=171

:wq


#service   mysql  restart

#mysql  -uroot   -p123

mysql>  grant     replication    slave  on   *.*   to   slaveuser@"172.40.50.107"  identified   by  "123456";


mysql>show master status\G;

*************************** 1. row ***************************

             File: master171.000001

         Position: 335

     Binlog_Do_DB: 

 Binlog_Ignore_DB: 

Executed_Gtid_Set: 

1 row in set (0.00 sec)


ERROR: 

No query specified


mysql> 


配置从数据库云服务器 107

mysql   -h272.40.50.171   -uslaveuser  -p123456

mysql>  quit;


vim  /etc/my.cnf

[mysqld]

server_id=107

log-bin=jing     #可选项

:wq

service  mysql   restart


mysql   -uroot   -p999

mysql> show slave status;

Empty set (0.00 sec)


mysql> change  master   to   

master_host="172.40.50.171",

master_user="slaveuser",

master_password="123456",

master_log_file="master171.000001",

master_log_pos=335;

mysql> start slave;


mysql> show slave status\G;

              Slave_IO_Running: Yes

              Slave_SQL_Running: Yes

以上关于应该如何解决mysql数据库主从不同步详细内容,对大家有帮助吗?如果想要了解更多相关,可以继续关注我们的行业资讯板块。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯