MySQL主从复制

前言

以下所有内容均作为个人笔记,为操作流程和本人遇到的问题及解决方式。项目是黑马的瑞吉外卖。

作为一名初学者,非常欢迎各位业界前辈的指点。

主体内容

MySQL主从复制的原理

配置主库

1.配置主库Master

 首先进入该配置文件(确保安装了vim)

vim /etc/my.cnf

进入编辑模式后写入下列配置,并且保存

log-bin=mysql-bin #启用二进制文件
server-id=100 #服务器唯一ID,不重复即可

2.重启MySQL服务

systemctl restart mysqld

3.登录Mysql数据库,执行下面SQL

登录MySQL

mysql -u用户名 -p密码

执行下列SQL语句

grant replication slave on *.* to '用户名'@'%' identified by '密码';

SQL代码解读:创建一个用户,设置密码,并且授予该用户 replication slave 的权限。常用于建立赋值时所需要用到的用户权限,也就是slave必须被master授权具有该权限的用户,才能通过该用户赋值。

4.记录结果中File和Position的值

show master status;

注意这一步完成后主数据库不要执行任何操作。  切换到从数据库。

配置从库

5.配置从库slave

修改Mysql数据库的配置文件

vim /etc/my.cnf

server-id=101 #服务器唯一ID,不重复即可

同步骤2,重启mysql.

6.执行下列SQL

change master to master_host='主库ip地址',master_user='授权用户',master_password='授权密码',master_log_file='步骤4中file的值',master_log_pos=步骤4中Position的值;

 注意需要将代码中的中文部分修改为自己的信息。

启动slave

start slave;

7.查看从数据库的状态

show slave status;

当显示为下列信息时候,则表示连接正确。

8.可能问题与解决

主服务器端口号未开放。使用下面代码查看对应端口是否开放

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

如果显示为no,则需要先开启端口。

执行

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

此时再次登录mysql并且show master status;

记录对应信息并且重新执行第六步。

如果报错可能是因为slave没有停止,需要先stop slave才能再次重新启动。

文末

 此处的从数据库的虚拟机并非克隆而来。之前试过通过克隆虚拟机,在克隆虚拟机上创建从数据库。但是失败了,等有机会再试试。


非常感谢各位能看到此处。欢迎点赞收藏加关注。顺祝各位新年快乐!!!

  • 21
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值