MySQL 主从配置 读写分离

Master配置

 

1.建立用户:mysql

在Master MySQL上建立一个用户‘repl’,并容许其余Slave服务器能够经过远程访问Master,经过该用户读取二进制日志,实现数据同步。sql

create user repl;

2.配置用户权限:数据库

repl用户必须具备REPLICATION SLAVE权限,除此以外没有必要添加没必要要的权限,密码为mysql。说明一下192.168.0.%,这个配置是指明repl用户所在服务器,这里%是通配符,表示192.168.0.0-192.168.0.255的Server均可以以repl用户登录主服务器。固然你也能够指定固定Ip。服务器

GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%' IDENTIFIED BY '123456';

3.修改配置文件spa

找到MySQL安装路径修改my.cnf文件,将如下配置添加至[mysqld]节点中。rest

server-id=1
log_bin=mysql-bin
binlog-do-db=
binlog-ignore-db=

server-id=1   #设置服务器id,为1表示主服务器,注意:若是原来的配置文件中已经有这一行,就不用再添加了。
log_bin=mysql-bin  #启动MySQ二进制日志系统,注意:若是原来的配置文件中已经有这一行,就不用再添加了。
binlog-do-db=  #须要同步的数据库名,若是有多个数据库,可重复此参数,每一个数据库一行
binlog-ignore-db=   #不一样步mysql系统数据库日志

4.重启数据库code

service mysql restart

5.记录File及Positionserver

需记录下Master的File及Position,配置Slave时会使用。blog

show master status;

 

 


 

 

 

Slave配置

1.修改配置文件

找到MySQL安装路径修改my.cnf文件,将如下配置添加至[mysqld]节点中。

server-id=2
log_bin=mysql-bin binlog-do-db= binlog-ignore-db=

server-id=1   #设置服务器id,为2表示从服务器,注意:若是原来的配置文件中已经有这一行,就不用再添加了。
log_bin=mysql-bin  #启动MySQ二进制日志系统,注意:若是原来的配置文件中已经有这一行,就不用再添加了。
binlog-do-db=osyunweidb  #须要同步的数据库名,若是有多个数据库,可重复此参数,每一个数据库一行
binlog-ignore-db=mysql   #不一样步mysql系统数据库

2.配置Slave

注意:MySQL 5.1.7版本以后,已经不支持把master配置属性写入my.cnf配置文件中了,只须要把同步的数据库和要忽略的数据库写入便可。

slave stop;
change master to master_host='192.168.21.169',master_user='repl',master_password='123456',master_log_file='mysql-bin.000019' ,master_log_pos=7131;
slave start;

slave stop; #中止slave同步进程
change master to master_host='192.168.21.169',master_user='osyunweidbbak',master_password='123456',master_log_file='mysql-bin.000019' ,master_log_pos=7131; #执行同步语句。其中master_logfile及master_log_pos需从master中查询。
slave start; #开启slave同步进程

 3.查看状态

SHOW SLAVE STATUS\G

Slave_IO_Running: YesSlave_SQL_Running: Yes以上这两个参数的值为Yes,即说明配置成功。

相关文章
相关标签/搜索