MySql主从复制原理和环境配置搭建

主从复制原理   

实质就是通过二进制的sql文件实现主从复制

MySQL的主从复制是MySQL本身自带的一个功能,不需要额外的第三方软件就可以实现,其复制功能并不是copy文件来实现的,而是借助binlog日志文件里面的SQL命令实现的主从复制,可以理解为我再Master端执行了一条SQL命令,那么在Salve端同样会执行一遍,从而达到主从复制的效果。 

从库生成两个线程,一个I/O线程,一个SQL线程; 

i/o线程去请求主库 的binlog,并将得到的binlog日志写到relay log(中继日志) 文件中;

主库会生成一个 log dump 线程,用来给从库 i/o线程传binlog; 

SQL 线程,会读取relay log文件中的日志,并解析成具体操作,来实现主从的操作一致,而最终数据一致;

MySql主从复制的作用

故障切换,数据备份,读写分离,集群高可用等

主从复制配置

例:

准备两台服务器

192.168.1.101(master主Mysql))

192.168.1.102(slave从Mysql)

①修改主Mysql配置文件

vim /etc/my.cnf
server_id=101  #服务器id
log-bin=mysql-bin   #开启日志文件

 然后 重启mysql服务

service mysqld restart

②主服务器给从服务器账号授权

GRANT REPLICATION SLAVE ON *.* to 'mastersync'@'%' identified by 'mysql_123456';#mastersync为自定义授权用户名 mastersync为自定义授权密码

然后 navicat连接主mysql

show master status;

查询主mysql的状态 file为日志文件名 position为日志位置

猜你喜欢

转载自www.cnblogs.com/boris-et/p/10371289.html