mysql 主从复制的搭建经验

很久以前自己试着搭建主从复制留下来的笔记,现在有时间就贴上来 分享给大家

工具介绍:

VM虚拟机服务器2台 安装的lnmp安装包
IP固定: 192.168.31.128 192.168.31.129
两台mysql 版本相同:
mysql版本查看

监听的端口都是默认 3306
配置文件位置: /etc/my.cnf
管理lnmp的命令 lnmp {nginx|mysql|mariadb|php-fpm|pureftpd} {start|stop|reload|restart|kill|status}


具体步骤


  1. 在主库上执行

    a.设置server-id值 并开启binlog功能参数(每台数据库的server-id都应该不同 ,我采用IP最后一个点的后面数字 即主库128, 从数据库129)。
    这里写图片描述
    b.重启数据库 检查参数

        egrep "server-id|log-bin" /etc/my.cnf
    

    这里写图片描述

    登录数据库确认参数是否正确
    这里写图片描述

    检查确认为正常
    c. 在主库上 建立用于主从复制的账号(用于从库连接主库的账号,账号创建于主库,权限也是设置与)
    登录实例主库然后执行

    sql:grant replication slave on *.* to 'rep'@'192.168.31.%' identified by '123456';
    

    这里写图片描述

    *.* :这里代表所有数据库和所有表 也可以单指定某个数据库下的某个表 如 databasename.tablename
    ‘rep’@’192.168.31.%’ 代表 账号和授权的网段 ,即我建的账号是rep
    identified by ‘123456’; 123456 :就是密码 ,图简单

    执行sql 刷新权限 使授权立即生效:

        sql: flush privileges;
    

    检查账号情况:

    sql:  select user,host from mysql.user;    
    

这里写图片描述

检查主库的情况

这里写图片描述

这连个字段在从库的配置会用到


2.在从库上执行操作
①设置server-id 关闭binlog功能

这里写图片描述

②改好后,保存,重启MySQL ,然后确认配置是否修改成功

sql :                 show variables like 'log_bin';

这里写图片描述

sql :                 show variables like 'server_id';

这里写图片描述

sql :
    CHANGE MASTER TO
    MASTER_HOST='192.168.31.128',
    MASTER_PORT=3306,
    MASTER_USER='rep',
    MASTER_PASSWORD='123456',
    MASTER_LOG_FILE='mysql-bin.000007',
    MASTER_LOG_POS=334;

这里写图片描述


3.启动同步开关 然后测试主从复制的情况
①启动从库的主从开关
相关语句

sql: start slave;

这里写图片描述

这里写图片描述


测试 在主库上建立了一个数据库 ,结果从库居然没有。

猜测这是服务器的防火墙原因。

关闭两台服务器器的防火墙 ,然后在打开从库 果然有了。

主从复制搭建完成 ,当然,这是最简单的主从复制。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值