MySQL主从复制原理应用基础(2)

6、登录主库创建数据库,看是否会同步到从库上面
[root@centos03 ~]# mysql -uroot -p123456 -S /data/3306/mysql.sock 
mysql> create database martin; 
Query OK, 1 row affected (0.01 sec)
 
 
观察从库,可以看到已经同步过来
mysql> show databases;
+--------------------+
| Database          |
+--------------------+
| information_schema |
| martin            |
| mysql              |
| performance_schema |
| test              |
+--------------------+
5 rows in set (0.00 sec)
 
 
[root@centos03 ~]# cd /data/3307
[root@centos03 3307]# ls
data  my.cnf  mysql  mysqld.pid  mysql_martin3307.err  mysql.sock  relay-bin.000001  relay-bin.000002  relay-bin.index  relay-log.info
[root@centos03 3307]# cat data/master.info 
18
mysql-bin.000002
419
172.16.80.118
rep
123456
3306
60
0
 
[root@centos03 3307]# mysqlbinlog  relay-bin.000002
/*!\C utf8 *//*!*/;
SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=33/*!*/;
SET @@session.lc_time_names=0/*!*/;
SET @@session.collation_database=DEFAULT/*!*/;
create database martin

mysql主从复制原理总结:

1、异步同步方式

2、逻辑同步模式,多种模式,默认是通过sql语句执行

3、主库通过记录bin-log实现对从库的同步,bin-log记录数据库更新的语句

4、主库一个IO线程,从库一个IO线程和一个SQL线程

5、从库关键文件master.info  relay-log  relay-info 

6、如果从库还需要做级联从库,从库需要打开log-bin和log-slave-updates参数

监控mysql主从状态(这里我们简单监控从库上面io和sql线程yes总数为不是2就认为主从出现问题了)

在客户端编写脚本

[root@centos03 tools]# cat /tmp/mysql-replication.sh 

#!/bin/bash

/application/mysql/bin/mysql -uroot -p123456 -e 'show slave status\G' -S /data/3307/mysql.sock|grep -Ei "Slave_IO_Running|Slave_SQL_Running"|awk '{print $2}'|grep -c Yes

修改zabbix-agent配置文件

UnsafeUserParameters=1

UserParameter=mysql.replication,/tmp/mysql-replication.sh

在服务器端添加监控项--触发器--图形

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/e747ff0f9db8c112f8fa582a0a9659b4.html