2018年04月6日网站服务器迁移完成……

linux下mysql主从配置

Linux 苏 demo 1543℃ 0评论

测试环境:

操作系统:centos 5.5

mysql版本:5.1.30

 

网上找了好多配置说明,我照搬来都有问题,最后发现很多都有些小错误,我综合了一下,其中也有自己的一些想法。就成了如下面这样的了。希望对看到这篇配置说明的朋友也有所帮助。

 

第一步:
在master上创建用于同步的用户
GRANT FILE,REPLICATION SLAVE,REPLICATION CLIENT,SUPER ON *.* TO backup@’192.168.0.246′ IDENTIFIED by ‘backup’;

第二步:
配置master机的my.cnf,在mysqld段加上:
server-id = 1588
replicate-same-server-id = 1
relay-log = mysql-relay-bin
log-bin = mysql-bin
replicate-ignore-db = mysql
replicate-ignore-db = information_schema
第二步:
配置slave机的my.cnf,在mysqld段加上:
replicate-same-server-id = 1588
master-host = 192.168.0.245
master-user = backup
master-password = backup
relay-log = relay-bin
relay-log-index = relay-bin
replicate-ignore-db = mysql
replicate-ignore-db = information_schema
测试:在slave机上运行:show slave status/G; 显示为如下面这样就OK!
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

Seconds_Behind_Master: 0

 

 

异常处理:
一、
Slave_IO_Running: NO
Slave_SQL_Running: Yes
检查用户权限、服务器ID

二、
Slave_IO_Running: Yes
Slave_SQL_Running: NO
在master上
mysql> show master status
-> ;
+——————+———-+————–+——————+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+——————+———-+————–+——————+
| mysql-bin.000012 |      106 |              |                  |
+——————+———-+————–+——————+
1 row in set (0.00 sec)
记住查到的两个值 。

转到slave上
mysql>slave stop;
mysql>change master to  master_host=’192.168.0.245′, master_user=’backup’,  master_password=’backup’,  master_port=3306,  master_log_file=’mysql-bin.000012′,  master_log_pos=106;
mysql>slave start;

再查看状态:
mysql>show slave status/G;
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

Seconds_Behind_Master: 0

OK! 配置完成!

ps:几个注意项目

1.更改从数据库的配置无须从/etc/my.cnf里变更,直接执行change master即可。

2.由于是采用的binlog同步的方式,只能同步执行binlog里面的内容。原有的结构和数据需要在同步之前导入到从库中。

打赏

转载请注明:苏demo的别样人生 » linux下mysql主从配置

   如果本篇文章对您有帮助,欢迎向博主进行赞助,赞助时请写上您的用户名。
支付宝直接捐助帐号oracle_lee@qq.com 感谢支持!
喜欢 (0)or分享 (0)
发表我的评论
取消评论
表情