Linux上mysql主从复制

准备好两台服务器,并且已经安装好mysql,要关闭服务器的防火墙

关闭防火墙:systemctl stop firewalld

查看防火墙状态:systemctl status firewalld

我使用的主从MySQL的版本为5.7

主库操作:

       主服务器开启二进制日志功能:

           打开配置文件:vi /etc/my.cnf 添加以下代码

     

      [mysqld]
      log-bin=mysql-bin   # mysql-bin 二进制文件名称,自定以
      server-id=2             # 数值自定义,只要不重复和从库的数值不一样就行

      重启mysql配置才能生效

       systemctl restart mysqld

      进入mysql命令

       mysql -u root -p  

     root:账号名,使用自己的账号名称

     回车输入密码(注意输入密码是不显示的

       

         查看主库有那些数据库

     show databases;

      

         为从库创建一个有复制权限的账号

     GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY 'Ete!2!23';

          *.*:复制所有数据库和表

          slave:用户名称自定即可

          %:所有情况都能访问 还有其它两个值IP地址和localhost

         ip地址:指定ip才能访问

         localhost:只能在本地访问无法远程连接

         Ete!2!23:密码自定即可

   

         刷新权限:

 

flush privileges;

   

       查看主库状态

     show master status;

      file和Position从库那边需要使用 每个人的值可能不一样按照自己的结果来

从库操作:

      打开配置文件:vi /etc/my.cnf  添加一下代码

 

  [mysqld]
  server-id=129  # 数值自定义,只要不重复和主库的数值不一样就行

      重启mysql

    systemctl restart mysqld

      主从库建立连接

CHANGE MASTER TO
master_host = '主库ip',
master_user = '主库上创建的从库复制账号',
master_password = '密码',
master_log_file = '主库file',
master_log_pos = 主库Position;

 

      上面的host、user、password、file和pos都是我自己的,按照自己主库上的配置来  

       启动从库线程

  start slave;    

 

     查看主从复制配置是否成功

    show slave status \G;

  

      查看从库下的数据库

    show databases;

   

      测试主从复制是否成功

      在主库上创建一个新的数据库,名称就叫db

      create database db;

     

    

     查看从库是否有db这个数据库

 

至此主从复制结束

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

twx95

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值