Mysql高级之主从复制

主从复制不就是多台服务器嘛!,一个改变另一个也改变啦,内容其实都一样!

原理:

对数据库进行操作会生成一个文件,binlog(二进制文件),从服务器配置relaylog文件,用来读取master里面binlog(有必要开启binlog,相当于备份),当然要有权限读取是吧,这就需要用到上次的权限配置啦!和普通登录没什么差别。

主做出什么动作,从也做出什么动作。

这时就需要注意主配置文件里面binlog-format ,里面值为row,二进制记录是磁盘变化;值为statusment,此时如果是执行了update语句,从服务器也会记录update语句

如果语句长而磁盘变化小,易用row

如果语句少而磁盘变化大,易用statusment 

还有一种mixed,此时由系统分析决定

1 打开主服务器里面配置文件


2 配置从服务器


3分配权限,并查看master状态。记下FILE及Position的值,这个在后面配置从服务器的时候要用到



4 从服务器上通过指定要复制的主服务器

 mysql>change master to aster_host=‘192.168.1.201‘,master_user=‘repl‘,master_password=‘q123456‘,
         master_log_file=‘mysql-bin.,000001‘,master_log_pos=106;

5 检查从服务器的复制状态


Slave_IO_Running: Yes       //此状态必须YES
Slave_SQL_Running: Yes       //此状态必须YES

就此ok了,很简单!

 所谓的读写分离,就是sql语句的判断啦,通过程序就可以实现。


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。