mysql如何做主从数据库_如何设置Mysql的主从数据库

如何设置Mysql的主从数据库

发布时间:2020-06-08 16:46:57

来源:PHP中文网

阅读:132

作者:三月

下文主要给大家带来如何设置Mysql的主从数据库,希望这些内容能够带给大家实际用处,这也是我编辑如何设置Mysql的主从数据库这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。

1、配置:

两台云服务器同配置的mysql如mysql5.7

PS:如果条件有限,一台也可以,只需要安装两个mysql服务(不同端口如3306,3307),只是这就有点违背效率初衷了

2、代码:

1.一般直接在代码层将mysql操作类的读写如update,insert与select * from进行路由分离.使之对应不同的云服务器.

2.中间件代理,即不改动代码的前提下,由中间件将读写请求发送至主从云服务器.

现在讲讲主从如何配置:

1、开放端口:大部分主机都默认Mysql端口3306,那么先将两台机子的安全组或防火墙里把3306端口打开并重启.

2、端口打开了,现在配置两个云服务器(一台主机两个Mysql服务器的同理):

下文以主ip:192.168.0.1,从ip:192.168.0.2,创建同步账号spec,密码spec_password为例:

主云服务器(增删改):#1.Mysql配置改以下并重启服务(命令行里直接重启:service mysql restart)

[mysqld]

server-id=1

log-bin=master-bin

log-bin-index=master-bin.index

#2.命令行mysql执行或phpmyadmin里执行:

GRANT REPLICATION SLAVE ON *.* TO 'spec'@'192.168.0.2' IDENTIFIED BY 'spec_password';

flush privileges;

这样,主云服务器就完工了.

从云服务器配置:#1.Mysql配置改以下并重启服务(命令行里直接重启:service mysql restart)

[mysqld]

server-id=2

relay-log-index=slave-bin.index

relay-log=slave-bin

#2.命令行mysql执行或phpmyadmin里执行:

change master to master_host='192.168.0.1',master_port=3306,master_user='spec',master_password='spec_password',master_log_file='master-bin.000001',master_log_pos=0;

start slave

一般来说,配置到此就完成了.

3.测试:

从云服务器中查询语句:show slave status

如果Slave_IO_State=Waiting for master to send event就成功了.

其余状态通常都是以下原因:

1.主从的安全组或防火墙未打开3306端口

2.主从之间ping不通.

3.上面的spec账密错误

现在起,在主云服务器随便增删改,都会同步到从服务器了.

4.建议:

1.切记从云服务器只操作读,不操作增删改.保持数据的同步性,这样当一台服务器故障的时候,另一台就可以顶上去(其实主服务器宕机的时候肯定会丢失一部分最新数据)。

2.从云服务器的带宽一定>=主服务器,尽量减少同步延迟.要是小水管,同步自然慢一步嘛。

对于以上关于如何设置Mysql的主从数据库,大家是不是觉得非常有帮助。如果需要了解更多内容,请继续关注我们的行业资讯,相信你会喜欢上这些内容的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值