MySQL复制的管理和维护

1.查看主库

mysql> show master status;

mysql> show master status;
+------------------+-----------+--------------+------------------+
| File             | Position  | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+-----------+--------------+------------------+
| mysql-bin.000013 | 971159980 |              |                  |
+------------------+-----------+--------------+------------------+
1 row in set (0.00 sec)

mysql> show master logs;

mysql> show master logs;
+------------------+------------+
| Log_name         | File_size  |
+------------------+------------+
| mysql-bin.000011 | 1073949250 |
| mysql-bin.000012 | 1073751139 |
| mysql-bin.000013 |  971159980 |
+------------------+------------+
3 rows in set (0.00 sec)

mysql> show binlog events in ‘mysql-bin.000013‘ from 971245404;

mysql> show binlog events in ‘mysql-bin.000013‘ from 971245404;
+------------------+-----------+-------------+-----------+-------------+-----------------------------------------+
| Log_name         | Pos       | Event_type  | Server_id | End_log_pos | Info                                    |
+------------------+-----------+-------------+-----------+-------------+-----------------------------------------+
| mysql-bin.000013 | 971245404 | Query       |         1 |   971245474 | BEGIN                                   |
| mysql-bin.000013 | 971245474 | Table_map   |         1 |   971245651 | table_id: 175 (attend.sys_user)         |
| mysql-bin.000013 | 971245651 | Update_rows |         1 |   971246116 | table_id: 175 flags: STMT_END_F         |
| mysql-bin.000013 | 971246116 | Table_map   |         1 |   971246185 | table_id: 176 (attend.sys_user_branch)  |
| mysql-bin.000013 | 971246185 | Write_rows  |         1 |   971246266 | table_id: 176 flags: STMT_END_F         |
| mysql-bin.000013 | 971246266 | Table_map   |         1 |   971246335 | table_id: 176 (attend.sys_user_branch)  |
| mysql-bin.000013 | 971246335 | Delete_rows |         1 |   971246416 | table_id: 176 flags: STMT_END_F         |
| mysql-bin.000013 | 971246416 | Xid         |         1 |   971246443 | COMMIT /* xid=3065249192 */             |           |
+------------------+-----------+-------------+-----------+-------------+-----------------------------------------+
8 rows in set (0.00 sec)

2.查看复制库延迟

mysql> show slave status\G

mysql> show slave status\G
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 192.168.10.106
                  Master_User: repl
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000013
          Read_Master_Log_Pos: 971434196
               Relay_Log_File: mysql-relay-bin.000002
                Relay_Log_Pos: 126333146
        Relay_Master_Log_File: mysql-bin.000013
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
              Replicate_Do_DB:
          Replicate_Ignore_DB:
           Replicate_Do_Table:
       Replicate_Ignore_Table:
      Replicate_Wild_Do_Table:
  Replicate_Wild_Ignore_Table:
                   Last_Errno: 0
                   Last_Error:
                 Skip_Counter: 0
          Exec_Master_Log_Pos: 971434196
              Relay_Log_Space: 126333302
              Until_Condition: None
               Until_Log_File:
                Until_Log_Pos: 0
           Master_SSL_Allowed: No
           Master_SSL_CA_File:
           Master_SSL_CA_Path:
              Master_SSL_Cert:
            Master_SSL_Cipher:
               Master_SSL_Key:
        Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
                Last_IO_Errno: 0
                Last_IO_Error:
               Last_SQL_Errno: 0
               Last_SQL_Error:
  Replicate_Ignore_Server_Ids:
             Master_Server_Id: 1
1 row in set (0.00 sec)

Seconds_Behind_Master:

·显示备库延迟,但不准确

·将服务器当前的时间戳与二进制日志中的事件时间戳相对比,所以只有在执行复制事件时才能报告延迟

·如果复制线程没有运行,延迟报告为null

·有时复制发生错误时,该参数为显示为0,而不是显示错误

·有时,即使复制线程正常运行,也不能估算延迟,而是显示0或null

·大事务会导致延迟波动

检测延迟比较好的方法是:使用heartbeat record

3. 确认主备是否一致

mysql没有内建方法来确认主备是否一致。checksum table可以校验数据,但是复制正在进行时,这种方法不可行。

可以使用percona提供的pt-table-checksum来校验主备数据是否一致。(结合pt-table-sync使用,重新同步数据)

时间: 2024-08-10 09:38:57

MySQL复制的管理和维护的相关文章

MySQL 复制过滤器、监控维护及主从复制的读写分离

MySQL 复制过滤器.监控维护及基于SSL的主从复制 =============================================================================== 概述: 本章将主要介绍MySQL复制中如何过滤,监控维护,以及基于SSL的主从复制,具体内容如下: MySQL 复制过滤器 ·从服务器库级别过滤 MySQL 清理日志:PURGE 复制监控 ·Master ·Slave 如何确定主从节点的数据是否一致 MySQL基于SSL的主从复制(

MySQL复制日常维护与管理

一.复制一些常见设置 1.mysql复制启动时参数: mysql启动时的参数包括:master_host,master_port,master_user,master_password,master_log_file,master_log_pos.这几个参数需要在从库上配置,用来记录需要复制的主数据库的地址.端口.和用户等.mysq复制还包括以下几个常用的复制参数:log-slave_updates.master-connect-retry.read-only等. log-slave_updat

使用 Ansible 管理 MySQL 复制

Ansible 是一个新兴的 IT 自动化工具.本文将介绍如何通过 Ansible 配置及管理 MySQL 主.从复制环境,实现部署过程自动化,体验 Ansible 简单快速带来的快感. 简介: Ansible 是一个配置管理和应用部署工具,功能类似于目前业界的配置管理工具 Chef,Puppet,Saltstack.Ansible 是通过 Python 语言开发.Ansible 平台由 Michael DeHaan 创建,他同时也是知名软件 Cobbler 与 Func 的作者.Ansible

第20章 mysql 复制

2015-10-24 目录 参考资料 [1] 唐汉明.深入浅出MySQL 数据库开发.优化与管理维护(第2版)[M].北京:人民邮电出版社,2014 [2] Schwartz.高性能MySQL(第3版)[M].北京:电子工业出版社,2013 [3] Chapter 17 Replication [4] 第6章:MySQL中的复制 [5] 理解MySQL——复制(Replication) [6] MySQL 5.6 复制介绍 [7] MySQL复制原理与配置 [8] mysql主从复制(超简单)

Mysql 复制工具(percona-toolkit)

Mysql 复制工具 1.percona-toolkit简介 percona-toolkit是一组高级命令行工具的集合,用来执行各种通过手工执行非常复杂和麻烦的mysql和系统任务,这些任务包括: 检查master和slave数据的一致性 有效地对记录进行归档 查找重复的索引 对服务器信息进行汇总 分析来自日志和tcpdump的查询 当系统出问题的时候收集重要的系统信息 percona-toolkit源自Maatkit 和Aspersa工具,这两个工具是管理mysql的最有名的工具,现在Maat

涂抹mysql笔记-mysql复制特性

<>mysql复制特性:既可以实现整个服务(all databases)级别的复制,也可以只复制某个数据库或某个数据库中的某个指定的表对象.即可以实现A复制到B(主从单向复制),B再复制到C.也可以实现A直接复制到B和C(单主多从复制),甚至A的数据复制给B,B的数据也复制会A(双主复制) <>mysql复制处理数据时,有三种不同的模式: 1.基于语句复制(Statement Based Replication):基于实际执行的sql语句的模式方案简称SBR 2.基于记录复制(Ro

GTID!MySQL复制中的核武器

各位老铁们,本周老张的<MySQL王者晋级之路>一书终于出版了,现在可以预购啦!预购链接地址:老张的数据库微店前前后后经历了一年的准备时间,可谓十年磨一剑,把自己从业所有的精华和心血都灌输到其书中.其书中包含了MySQL方方面面的知识点,是之前我的一篇博客"从青铜到王者,快速提升你MySQL数据库段位的全面深入剖析".用一句学生对我说得话,老师喜欢您的王者荣耀情怀,但更喜欢您的技术情操.讲真,不要错过!特别感谢在我从事技术道路上,帮助过我的前辈及兄弟们,这条路上的所有的辛酸

MySQl Study学习之--MySQl二进制日志管理

MySQl Study学习之--MySQl二进制日志管理 MySQL二进制日志(Binary Log):   a.它包含的内容及作用如下:    包含了所有更新了数据或者已经潜在更新了数据(比如没有匹配任何行的一个DELETE)    包含关于每个更新数据库(DML)的语句的执行时间信息    不包含没有修改任何数据的语句,如果需要启用该选项,需要开启通用日志功能    主要目的是尽可能的将数据库恢复到数据库故障点,因为二进制日志包含备份后进行的所有更新    用于在主复制服务器上记录所有将发送

活动目录管理及维护----------操作主机1(转移主机优化域控制器,占用操作主机较色,升级03域控制器到08)

享受生活  热爱挑战                                                                                        刘明远分享                 六操作主机  上(本章分两节) 每章一段话 没有永远的缘份,没有永远的生命,我们所能拥有的,可能只是平凡的一生.然而因为有你,生命便全然不同,世界也许因你而更加精彩.不要放弃了自己!!! (本章实验:转移主机的优化域控制器.  占用操作主机角色) 一  操作主