首页 > 代码库 > MySQL主从分离读写复制
MySQL主从分离读写复制
试验证明,在高负载的生产环境里,把数据库进行读写分离,能显著提高系统的性能。下面对MySQL的进行读写分离。
试验环境
A机:IP:192.168.0.1 mysql版本:mysql-5.6.4,主数据服务器(只写操作)
B机:IP:192.168.0.2 mysql版本:mysql-5.6.4,从数据服务器(只读操作)
步骤
1、修改主数据库服务器的配置文件,WINDOWS下为my.ini,LINUX下为:my.cnf。我们在配置文件[mysqld] 区域中加入如下两行:
server-id = 1 -- 每个mysql实例各不相同,一般为整数,此处写1
log-bin=mysql-bin --使用mysql二进制方式进行复制,此步为必须配置.
使用命令,创建用于复制数据的用户backup:mysql> GRANT REPLICATION SLAVE ON *.* TO backup@localhost IDENTIFIED BY ‘111111‘;
2、重启主MySQL,输入show master status\G;命令, 显示主数据库服务器的状态:
3、在从数据库服务器的配置文件[mysqld]中,加入下面两行:
server-id = 2 -- 每个mysql实例各不相同,一般为整数,此处写2
log-bin=mysql-bin --使用mysql二进制方式进行复制.
4、登录从数据库服务器,输入以下命令:
mysql> CHANGE MASTER TO
-> MASTER_HOST=‘192.168.0.1‘,
-> MASTER_USER=‘backup‘,
-> MASTER_PASSWORD=‘111111‘,
-> MASTER_LOG_FILE=‘mysql-bin.000003‘ -–此处对应主服务器状态的FILE
-> MASTER_LOG_POS=370558; ---此处对应主服务器状态的Position
5、命令启动从服务器的SLAVE, mysql> start slave;
6、查看从服务器的状态:show slave status\G 注意以下两个状态为YES,表示运行已经正常:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
7、测试,在主数据服务器进行插入、更新、删除数据,查看从服务器的数据