MySQL主从介绍
MySQL主从又叫做Replication、AB复制。简单讲就是A和B两台机器做主从后,在A上写数据,另外一台B也会跟着写数据,两者数据实时同步。MySQL主从是基于binlog的,主上须开启binlog才能进行主从。
主从过程:
需要保持数据的一致性,才能复制数据
1、主服务器将更改操作记录到binlog中
2、从服务器将主服务器的binlog事件(SQL语句)同步到本机(从服务器)并记录在relaylog(中继日志)中
3、从服务器根据relaylog里面的SQL语句按顺序执行
说明: 该过程有三个线程,主上有一个log dump线程,用来和从的i/o线程传输binlog;从上有两个线程,其中i/o线程用来同步主的binlog并生成relaylog,另外一个SQL线程用来把relaylog里面的SQL语句执行。
应用的场景:
1、备份重要的数据
2、分担主库服务器的读的压力,让从服务器读,主服务器写操作
准备工作
主服务器:192.168.3.74 安装mysql5.6
从服务器:192.168.3.83 安装mysql5.6
配置主
1、[root@centos7 system]# vi /etc/my.cnf
[mysqld]
server-id=132
log_bin=jacklinux
2、重启:
[root@centos7 system]# /etc/init.d/mysqld restart
Shutting down MySQL.. SUCCESS!
Starting MySQL.. SUCCESS!
[root@centos7 system]# ls -lt /data/mysql/ #二进制文件,不能查看
-rw-rw---- 1 mysql mysql 19 Nov 22 09:33 jacklinux.index
-rw-rw---- 1 mysql mysql 120 Nov 22 09:33 jacklinux.000001
3、新建一个数据库为试验做准备:
[root@centos7 mysql]# mysqldump -uroot -p123456 zrlog > /tmp/zrlog.sql
[root@centos7 mysql]# mysql -uroot -p123456 -e "create database jacktest"
[root@centos7 mysql]# mysql -uroot -p123456 jacktest < /tmp/zrlog.sql
4、创建同步账号
mysql> grant replication slave on *.* to 'repl'@'192.168.3.83' identifi