MySQL的主从复制

为什么需要这个技术,主要目的是减轻主数据库服务器的负载。使用MySQL的主从复制功能轻松完成主从服务器的数据同步。只有主从服务器的数据能及时更新,为读取分离提供前提条件。

 

MySQL复制技术主要使用bin-log日志功能,主服务器的基本所有操作都会记录在bin-log日志中,从服务器只要执行主服务器的bin-log日志就能完成数据同步。

 

步骤:

1.主服务器数据库开一个供从服务器远程复制的账号,并在防火墙打开3306端口。

2.主服务器数据库MySQL开启bin-log功能,并配置唯一的uid。默认并没有开启。

3.从服务器配置主从复制配置,并验证。

 

 

1.主服务器数据库开一个供从服务器远程复制的账号,并在防火墙打开3306端口。

打开端口号:

firewall-cmd --query-port=3306/tcp

systemctl reload firewalld

 

设置test用户可以让从服务器(192.168.117.130)访问,密码为Aa123456!@#$

grant all privileges on *.*  to 'test'@'192.168.117.130'  identified by 'Aa123456!@#$';

一下语句查看用户是否配置争取

select user,host from mysql.user;

 

在从服务器中验证test用户是否能登录,输入密码等登录成功,说明用户登录成功

mysql –utest –p –h192.168.117.129

 

2.主服务器数据库MySQL开启bin-log功能,并配置唯一的uid。默认并没有开启。

如果找不到文件,可以使用find / -name my.cnf命令查找

在my.cnf配置文件中配置参数.server-id是跟从服务器不一样的,log-bin根据实际情况配置路径。

在[mysqld]下面加入

server-id=343243

log-bin=/var/lib/mysql/mysql-bin

重启mysqld服务

service mysqld restart

 

3.从服务器配置主从复制配置,并验证。

1).my.cnf文件中[mysqld]加入,这个值需要跟主服务器不一样

server-id = 343

service mysqld restart

 

2)使用命令进入mysql界面,然后配置。这里配置的信息为主服务器的信息,ip,用户名,密码,还有日志文件及位置。执行下面语句就完成配置。

备注:在主服务器的mysql中,输入命令,就可以知道MASTER_LOG_FILE
MASTER_LOG_POS这两个值
SHOW MASTER STATUS \G;

 

3)启动Slave同步进程

start slave

 

执行show slave status\G;

就可以看到以下信息就代表配置成功,红框里面如果出现NO,代表未配置成功。

这个时候可以使用tail /var/log/mysqld.log 命令查看,具体错误是什么,一步步解决。

 

以上就已经完成了主从复制配置了。在主服务器中的改变,都会更新到从服务器中。

本文参考了https://www.cnblogs.com/gl-developer/p/6170423.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值