`
zfy421
  • 浏览: 233673 次
社区版块
存档分类
最新评论

linux下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 -p -hlocalhost > 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='', master_log_file = 'mysqld-bin.000001', master_log_pos=3260; 
8.重新开启从同步 
mysql> stop slave; 
9.查看同步状态 
mysql> show slave status\G 查看: 
Slave_IO_Running: Yes 
Slave_SQL_Running: Yes 
好了,同步完成啦。

最后不要忘了主库解锁:unlock tables。

分享到:
评论

相关推荐

    Linux下MySQL主从同步复制

    【Linux下MySQL主从同步复制】是MySQL数据库在分布式环境中实现数据备份和高可用性的一种常见策略。在Linux操作系统上,这一过程涉及到一系列步骤,包括安装MySQL服务、配置主从服务器、设置复制参数以及验证复制...

    linux下mysql主从复制

    ### Linux 下 MySQL 主从复制详解 #### 一、概述 MySQL 的主从复制是一种非常重要的技术,它不仅可以提高系统的可用性和扩展性,还能为数据备份提供便利。在本篇文章中,我们将详细介绍如何在 Linux 操作系统环境...

    Linux配置mysql主从同步

    ### Linux下MySQL主从同步配置详解 #### 一、引言 在数据库管理领域,MySQL主从同步是一种常见的数据复制技术,它可以帮助我们构建高可用性和数据冗余性,从而提高系统的稳定性和可靠性。本文将详细介绍如何在Linux...

    Linux-Mysql主从同步配置

    Linux-Mysql 主从同步配置 本文将详细解释 Linux-Mysql 主从同步配置的步骤和知识点。 一、主服务器配置 1. 编辑数据库配置文件 my.cnf, 一般在/etc/目录下。 2. 在[mysqld]下面加入以下代码: * log-bin=mysql...

    MySQL主从复制搭建 需要用到的脚本

    MySQL主从复制是一种常见的数据库高可用性和数据冗余策略,它允许数据在多个服务器之间同步,确保即使在主服务器故障时,从服务器也能接管服务,从而实现无中断的服务连续性。这里提到的“MySQL主从复制搭建 需要...

    linux下mysql主从复制搭建.pdf

    在Linux环境下,MySQL主从复制是一种常见的高可用性和负载均衡解决方案。通过主从复制,可以将主服务器的数据更改实时同步到从服务器,确保在主服务器出现故障时,从服务器能够接管服务,保证业务的连续性。以下是...

    MySQL高级 主从复制——个人总结

    MySQL主从复制是一种数据库同步技术,可以将一台MySQL服务器(称为master)上的数据变动实时复制到一台或多台MySQL服务器(称为slave)上。这种复制技术对于数据备份、读写分离、负载均衡和故障恢复等方面具有重要...

    linux运维学习笔记:MySQL主从复制原理和实战.pdf

    在开始讨论MySQL主从复制的原理和实战之前,我们需要了解其重要性。主从复制的主要作用是保证数据安全性和服务的持续运行。当主数据库发生故障时,从数据库可以接管业务,保证服务的连续性。同时,通过将数据复制到...

    linux centos MySQL主从复制+Atlas读写分离

    MySQL 主从同步常见异常及恢复方法** - **延迟问题:** 检查网络连接、磁盘 I/O 性能。 - **复制错误:** 通过 MySQL 错误日志定位问题。 - **数据不一致:** 使用 `STOP SLAVE` 命令停止复制进程,然后根据错误...

    mysql主从复制+lvs与keepalived实现负载高可用

    MySQL主从复制是数据库高可用性的一种常见策略,它允许数据在多个服务器之间实时或近实时地同步。这种配置使得当主服务器发生故障时,从服务器可以接管服务,确保业务连续性。在这个场景中,主机A(192.168.5.171)...

    MySQL主从复制配置文档

    以下是关于MySQL主从复制及其在Linux环境下编译安装配置的详细知识: 1. **主从复制的基本概念** - 主节点:执行所有写操作(INSERT、UPDATE、DELETE等)的服务器,其更改的数据会同步到从节点。 - 从节点:接收...

    12.1: MySQL主从同步 、 主从同步模式 、 总结和答疑.docx

    MySQL主从同步是指将一个MySQL服务器的数据实时地复制到另一个或多个服务器上,以实现数据的高可用性和灾难恢复。这种方式可以实现数据的热备援、读写分离、负载均衡等功能。 1. 案例 1:MySQL 一主一从 在这个...

    mysql主从复制搭建文档

    MySQL主从复制是一种数据同步机制,它能够实现在多个服务器间的数据一致性。通过这种机制,可以从主服务器(Master)自动地将所有数据库操作(包括DDL和DML语句)复制到一个或多个从服务器(Slave)。这种方式不仅...

    MySQL主从复制.pdf

    MySQL主从复制技术是一种数据库复制技术,它可以在多个服务器之间复制数据,使得数据在不同位置保持一致。这种技术广泛应用于数据库的高可用性、负载均衡、数据备份、读写分离等场景。 知识点一:MySQL版本和操作...

    linux实现mysql主从复制(将对数据库的读写操作分离开来,这也是数据库优化的一种方式).pdf

    本文将详细解析MySQL主从复制的工作原理、实施步骤及其应用场景。 ### 一、MySQL主从复制原理 MySQL主从复制是通过一个名为`binlog`的二进制日志来实现的。当在主服务器上执行任何更改数据的操作时,这些操作会被...

    Linux配置mysql主从

    ### Linux下MySQL主从配置详解 #### 环境配置 在进行MySQL主从配置之前,首先需要确保有两个可用的MySQL服务器,本文档中的环境设置为: - **MySQL Server A** (主服务器): IP地址为192.168.0.100 - **MySQL ...

Global site tag (gtag.js) - Google Analytics