Mysql数据库主从不同步解决案例

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介:

问题说明:做了Mysql的主从,还没做主从分离,导致同事在mysql从服务器执行了写入操作,引起不同步(show slave status\G;Slave_SQL_Running: No)

解决方法:

1,

1
2
3
4
Mysql > slave stop;
Mysql >  set  global sql_slave_skip_counter =1 ;
Mysql > slave start;
Mysql > show slave status\G

因为插入的数据不止是1条,操作太慢且麻烦

2,

在主查询show master status\G,再从这个点执行

change master to master_host='master_ip', master_user='user', master_password='pwd',  master_port=3306,  master_log_file='mysql-bin.00000*',  master_log_pos=000000***;

数据会丢的更多。


因此,还是选择第一种方法,不过set global sql_slave_skip_counter=500 把这个数值调大,一次跳过去500条,一直循环那4条语句,直到

Slave_IO_Running: Yes

Slave_SQL_Running: Yes


造成结果:这样操作的结果是丢失一些数据,不过少点,另外其中某一个表不同步了(因为有跳过从本来应该执行的语句),接下来解决这个问题,选择数据库插入频率很小的时候做,最好这时候不要有数据写入,以免影响生产环境(下面只是举例子说明解决步骤)

3,

用Navicat for MySQL登录主库,下面操作都是在主库进行

wKioL1PbMU_BkPRvAAMo-F26xnA808.jpg

1,在主库查询“SELECT COUNT(*) FROM date.table;”知道现在这个表有多少行,作为最后验证,选择“复制表”,复制后的表名称为 table_name_copy,复制的表数据也不会同步的

2,把复制的表导出,选择“转储SQL文件----结构和数据”,保存到硬盘上面

3,删除这个复制的表table_name_copy。在数据库右键选“运行SQL文件”,把刚才导出的数据再导入进去

wKiom1PbMOzB1BAAAADB04jtqr4962.jpg

现在的结果是刚导入的表table_name_copy主从肯定是同步的

4,关键的一步,继续查主库“SELECT COUNT(*) FROM date.table;” 看数据表有没有写入内容,如果没有写入,赶紧F2把table的名字改一下,3秒钟时间

table_name(数据对,没同步)改为table_name1

table_name_copy(趁着数据没写入table_name,已同步)改为table_name

再次“SELECT COUNT(*) FROM date.table;”查询,看有没有插入数据


5,总结,主从不同步会造成查询的数据不一致,做这个动作之前要和用这个表的人商量,保证不出现意外。主从做好了,要么做读写分离,要么控制权限,从只能查,没其他权限,这样才不会出问题










本文转自 bbotte 51CTO博客,原文链接:http://blog.51cto.com/bbotte/1533740,如需转载请自行联系原作者
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
13天前
|
运维 DataWorks 关系型数据库
DataWorks产品使用合集之DataWorks还有就是对于mysql中的表已经存在数据了,第一次全量后面增量同步的步骤如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
28 2
|
14天前
|
DataWorks 关系型数据库 MySQL
DataWorks产品使用合集之在DataWorks中,要实现MySQL数据源的增量同步如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
38 2
|
1天前
|
关系型数据库 MySQL Linux
服务器Linux系统配置mysql数据库主从自动备份
这是一个基本的配置主从复制和设置自动备份的指南。具体的配置细节和命令可能因您的环境和需求而有所不同,因此建议在操作前详细阅读MySQL文档和相关资源,并谨慎操作以避免数据丢失或不一致。
10 3
|
3天前
|
关系型数据库 MySQL Linux
本地虚拟机centos7通过docker安装主从mysql5.7.21
本地虚拟机centos7通过docker安装主从mysql5.7.21
10 0
|
5天前
|
SQL 存储 小程序
数据库数据恢复—Sql Server数据库文件丢失的数据恢复案例
数据库数据恢复环境: 5块硬盘组建一组RAID5阵列,划分LUN供windows系统服务器使用。windows系统服务器内运行了Sql Server数据库,存储空间在操作系统层面划分了三个逻辑分区。 数据库故障: 数据库文件丢失,主要涉及3个数据库,数千张表。数据库文件丢失原因未知,不能确定丢失的数据库文件的存放位置。数据库文件丢失后,服务器仍处于开机状态,所幸未写入大量数据。
数据库数据恢复—Sql Server数据库文件丢失的数据恢复案例
|
6天前
|
SQL 存储 数据挖掘
数据库数据恢复—数据库ndf文件大小变为0KB的数据恢复案例
存储设备损坏导致存储中SQL Server数据库崩溃。对数据库文件进行恢复后,用户发现有4个ndf文件的大小变为0KB。该SQL Server数据库每10天生成一个大小相同的NDF文件,该SQL Server数据库包含两个LDF文件。
|
12天前
|
SQL 数据可视化 关系型数据库
【MySQL-11】多表查询全解-【多表关系/内外自连接/子查询/多表查询案例链接】(可cv代码&案例演示)
【MySQL-11】多表查询全解-【多表关系/内外自连接/子查询/多表查询案例链接】(可cv代码&案例演示)
|
12天前
|
关系型数据库 MySQL Linux
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
|
12天前
|
关系型数据库 MySQL 数据库
【MySQL-10】DCL-数据控制语言-【管理用户&权限控制】 (语法语句&案例演示&可cv案例代码)
【MySQL-10】DCL-数据控制语言-【管理用户&权限控制】 (语法语句&案例演示&可cv案例代码)
【MySQL-10】DCL-数据控制语言-【管理用户&权限控制】 (语法语句&案例演示&可cv案例代码)
|
12天前
|
关系型数据库 MySQL Linux
【MySQL-9】一文带你搞定 外键约束&其【更新/删除行为】(可cv代码&案例演示)
【MySQL-9】一文带你搞定 外键约束&其【更新/删除行为】(可cv代码&案例演示)

推荐镜像

更多