MySQL主从复制配置

先说说我的环境,两台Ubuntu14的虚拟机,ip地址是192.168.176.150(主)和192.168.176.151(从)。 mysql版本5.5.49.

MySQL安装好了以后,就可以开始配置主从复制。

首先从master-192.168.176.150开始。

1. 首先创建一个帐号,比如用户名backup,密码1234. 此帐号被slave机器用来连接master,然后取回bin log。

2. 连接到MySQL,mysql -u root -p.

3. 授予步骤1创建的帐号replication slave的权限,用户名的密码会储存到master.info里

mysql > GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* 
TO backup@’192.168.176.151 
IDENTIFIED BY ‘1234’;

4. 打开my.cnf,在配置文件里加入如下值:

server-id=150
log-bin=mysql-bin #这项必须有,但是可以保持value不变

5. 重启master

6. 运行show master status

mysql>show master status.

正常会输出一个表格,里面有两列比较重要,一个是File,一个是position。其中file的名字需要在后面配置slave时候指定,因为这个是说明slave想从master里拿到的log的文件名字。postion是从那个位置同步。同样需要在配置slave的时候指定。

配置salve:

1. 修改my.cnf

log_bin           = mysql-bin
server_id         = 151

注意server_id是必须的,但是log_bin是可选的。但是如果这个slave同时是另外机器的master,那么这个就是必选项。

2. 启动slave

mysql>change master to master_host='192.168.176.150',master_user='backup',master_password='1234',
         master_log_file='mysql-bin.000001',master_log_pos=278;

3. 启动slave

mysql>start slave;

4. 可以用show slave status查看slave状态

mysql>show slave status\G; #注意是大写的G,这样,得到的结果排版就是竖向的

注意:Slave_IO及Slave_SQL进程必须正常运行,即YES状态。附加的可以查看Slave_IO_State,应该是等待master发送event,即Waiting for master to send event

5. 测试,在master的一个表里插入一条数据,看看是否会同步到从表。

猜你喜欢

转载自ajaxcn.iteye.com/blog/2297624