MySql主从复制+开启3306端口号

目录

1.介绍

1.1前置条件

2.配置

2.1在虚拟机中通过命令的方式实现主库配置

 ​​​2.2在虚拟机中通过命令的方式实现从库配置

 3.测试

 4.开启防火墙和3306端口号


1.介绍

主库一般有一个,从库可以有多个

1.1前置条件

提前准备好两台服务器,分别安装mysql并启动服务成功(安装在Linux系统中)

这里我是在虚拟机上克隆了一台虚拟机,并修改克隆的ip(也可以创建两台虚拟机都行)

并连接上你windows系统中的数据库

2.配置

2.1在虚拟机中通过命令的方式实现主库配置

1.修改Mysql数据库的配置文件/etc/my.cof(可能每个人的位置不同)

           vim /etc/my.cof

2.log-bin=mysql-bin  #[必须]启用二进制日志

   server-id=100  #[必须]服务器唯一ID  (id随便配置只要保持唯一)

3.改完配置文件后重启

        systemctl restart mysqld

4.登录mysql数据库

        mysql -uroot -p(自己设置的密码)

5.登录完成执行下方代码:

        GRANT REPLICATION SLAVE ON *.* to 'xiaoming'@'%' identified by 'Root@123456';

        说明:从库到主库拿日志他们之间需要通信认证,这里的小明用户就是设置的通信用户。

        也就是从库必须被主库授权具有该权限的用户,才能通过该用户复制。

6.查看主库的状态

        show master status;  (记住File和Position下方的数据,从库要用到)

 ​​​2.2在虚拟机中通过命令的方式实现从库配置

1.按照主库的方式给my.cnf文件设置

        只设置唯一ID

2.重启mysql服务

        systemctl restart mysqld

3.登录mysql数据库(从库的别搞错了)

        mysql -uroot -p(自己密码)

4.执行下方代码:

change master to master_host='192.168.31.132',master_user='xiaoming',master_password='Root@123456',master_log_file='mysql-bin.000002',master_log_pos=441;

根据自己情况输入:

'192.168.31.132':主库的ip

'xiaoming':主库设置的通信用户

'Root@123456':通讯用户密码

'mysql-bin.000002':查看主库状态时的File

441:查看主库状态时的Position

5.重新让线程跑起来

        start slave;

6.查看从库的状态:show slave status;

 3.测试

在主库创建新库刷新从库会跟着同步就表示测试成功

(若无法同步,或者无法本地连接远程mysql需要开启防火墙和3306端口号)

(使用克隆虚拟机的方式完成主从复制的,要更改虚拟机Mysql的UUID)

 4.开启防火墙和3306端口号

1.本地测试3306是否开启

        ping 虚拟机ip

2.使用telnet命令查看是否可以连接3306端口(失败就在linux开启3306端口)

        telnet 虚拟机ip 3306

3.在linux系统中查看防火墙状态

        service iptables status

        若报了一下错误:

        ​​​​​​​

        解决办法:yum install iptables-services

4.编辑防火墙配置文件

        vi /etc/sysconfig/iptables

        注:一定注意自己的虚拟机系统是什么

        ubuntu 使用

        -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

        CentOS 使用

        -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

   注意:::位置不能放错   a6b9038489afa98f001a3bda178efa90.png

 5.重启防火墙

        service iptables restart

        出现一下错误:

        

        解决办法:systemctl start iptables

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值