MySQL MasterSlave Replication Setup(mysqlmrr)

MySQL有可能由于负载而变得缓慢,所以很多用户引入主从复制来分离读写查询,并改善MySQL的性能和可伸缩性,从而降低复杂度。

MySQL的主从复制是一种分布式的技术,用来把一个Twitter把数据库的内容复制到另外一个Server上面。主从复制涉及三个基本的服务器角色,master:主服务器,用来根据当前的数据库状态来控制变更的; slave:从服务器,用来根据主服务器发出的命令来更新数据; monitor:监控服务器,用来监控和报警主从复制的状态。

MySQL复制设置包括创建复制账户,检查和配置MySQL设置,配置账户权限,和运行复制脚本。配置过程如下:

1. 创建MySQL用户名和密码,并设置相应的权限:

a. 在主服务器上创建复制账户:

CREATE USER ‘replication’@’%’ IDENTIFIED BY ‘password’;

b. 赋予MySQL复制账号以下权限:

GRANT REPLICATION SLAVE ON *.* TO ‘replication’@’%’;

c. 在从服务器上创建用户:

CREATE USER ‘replication’@’%’ IDENTIFIED BY ‘password’;

2. 开启MySQL复制功能:

a. 主服务器:

vi /etc/my.cnf

[mysqld]

log-bin

server-id=1

b. 从服务器:

vi /etc/my.cnf

[mysqld]

server-id=2

read_only=yes

3. 检查MySQL配置:

a. 运行mysql命令:

mysql> SHOW MASTER STATUS;

b. 检查从服务器是否正常:

mysql> SHOW SLAVE STATUS \\G

4. 运行复制脚本:

a. 在从服务器上运行复制脚本:

CHANGE MASTER TO MASTER_HOST=’master.example.com’,MASTER_USER=’replication’,MASTER_PASSWORD=’password’,MASTER_LOG_FILE=”,MASTER_LOG_POS=;

b. 从服务器启动复制:

START SLAVE;

完成以上设置后,MySQL复制已经成功配置,从服务器可以从主服务器上复制数据。除此之外,还可以根据需要对MySQL复制进行优化,以节省资源,提高性能。


数据运维技术 » MySQL MasterSlave Replication Setup(mysqlmrr)