学习——centos7.4 64位 mysql主从双机热备

看过好多大神的博客,尝试过好几个方法,最终总结出适用自己的。
主服务器:
ip:120.78.00.001(随便起的)
centos7.4 64位
mysql 5.7
从服务器:
ip:120.78.00.002(随便起的)
centos7.4 64位
mysql 5.7

  1. 主服务器上
    1.1登陆mysql:
    mysql -u root -p
    1.2给从服务器120.78.00.002授权用户hotstandby
    grant all privileges on *.* to 'hotstandby' @'120.78.00.002' identified by 'A123a123!!';
    如果没有修改密码安全等级,要设复杂点
    1.3开启远程连接权限
    grant all privileges on *.* to 'hotstandby' @'%' identified by 'A123a123!!';
    1.4刷新
    flush privileges;
    1.5退出mysql
    exit
    1.6编辑my.cnf文件
    vim /etc/my.cnf
    按i进入编辑模式,结尾添加
    log-bin=mysql-bin
    binlog_format=mixed
    server-id=1 #服务器唯一性标识符,每台服务器配置必须保存不一样
    read-only=0
    binlog-do-db=bootdo #需要备份的那个数据库名叫 “bootdo”
    auto-increment-increment=2 #这里设置用来台服务器来做备份,按个人情况定
    auto-increment-offset=1 #表示这台服务器序号,从1开始,不超auto-increment-increment

    按esc退出模式,输入‘:wq’退出并保存文件
    1.7重启mysql
    service mysql restart
    1.8重新登陆mysqlmysql -u root -p
    1.9查看主服务器状态
    show master status;
    记住这里的file值:mysql-bin.000001和position的值:154 后面会用到

  2. 复制数据库
    我是用Navicat连接了两个数据库,把主数据库的bootdo储成sql文件bootdo.sql(结构和数据),然后在从数据库的bootdo下执行bootdo.sql
    我执行时报错 [Msg] Finished - Unsuccessfully —,没有一条成功,百度后发现是sql语句过长,文件太大了,要修改从数据库的参数max_allowed_packet,忘了是哪位大神的帖子,只记得是把参数改成512M
    在navicat上右键数据库,进入命令列界面
    set global max_allowed_packet = 1024*1024*512;

  3. 从服务器
    2.1编辑my.cnf文件
    vim /etc/my.cnf
    按i进入编辑模式,结尾添加
    log-bin=mysql-bin
    binlog_format=mixed
    server-id=2
    replicate-do-db=bootdo
    relay_log=mysql.relay.bin

    按esc退出模式,输入‘:wq’退出并保存文件
    2.2重启mysql
    service mysql restart
    2.3登陆mysql
    mysql -u root -p
    2.4先停止slave同步进程
    stop slave;
    2.5执行同步语句
    CHANGE MASTER TO MASTER_HOST='120.78.00.001',MASTER_USER='hotstandby',MASTER_PASSWORD='A123a123!!',MASTER_LOG_FILE='mysql-bin.000001',MASTER_LOG_POS=154;
    MASTER_HOST=主服务器ip;
    MASTER_USER=授权的用户;
    MASTER_PASSWORD=密码;
    MASTER_LOG_FILE=前面查出来的file值;
    MASTER_LOG_POS=前面查出来的position的值;
    2.6开启slave同步进程
    start slave;
    2.7查看slave同步信息
    show slave status\G;
    结果
    如果看到红色框的两个参数都是yes,就表示成功了

  4. 测试
    启动项目,新增一个用户,可以看到主数据库上用户表里有新增,从数据库上用户表里也有新增。
    再测试删除,更新,效果也一样。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值