美文网首页
mysql主从复制配置

mysql主从复制配置

作者: Vanderfan | 来源:发表于2019-10-31 01:17 被阅读0次

    1、环境说明:

    操作系统:centos7.5
    MySQL版本:mysql5.6
    使用三台虚拟机:

    • 192.168.1.111 master
    • 192.168.1.112 slave
    • 192.168.1.113 slave

    2、安装mysql

    参考上篇文章:centos7手动安装mysql5.6

    3、主数据库配置

    第1步:编辑/etc/my.cnf文件,在[mysqld]下增加如下两行设置:
    [mysqld]
    log-bin=mysql-bin # 非必需
    server-id=1    # 必需
    
    第2步:创建用于数据同步的账户
    CREATE USER 'master'@'192.168.1.%' IDENTIFIED BY '123456';
    GRANT REPLICATION SLAVE ON *.* TO 'master'@'192.168.1.%';
    FLUSH PRIVILEGES;
    
    第3步:查看master状态
    image.png
    第4步:查看master状态

    4、从数据库配置(以192.168.1.112为例)

    第1步:编辑/etc/my.cnf文件,设置server-id

    注意一点:slave的server-id要跟master的server-id做区分

    [mysqld]
    server-id=2
    
    image.png
    第2步:执行同步语句,并启动slave
    change master to master_host='192.168.1.111', master_user='master', master_password='123456', master_log_file='mysql-bin.000001', master_log_pos=120;
    
    start slave
    

    注意一点:master_log_file和master_log_pos要与上面主库show master status里面展示的内容保持一致


    image.png
    第3步:查看slave状态
    show slave status\G;
    
    第4步:验证是否同步成功

    主库和两个从库都建立test数据库,student表
    主库插入一条数据,查看两个从库,发现从库也相应新增一条数据。
    注意一点:主库和从库都建好表之后,检查从库的binlog_pos是否跟master一致

    第5步:从库设置只读账户
    create user 'read'@'%' identified by '123456';
    grant select on test.* to 'read'@'%';
    flush privileges;
    

    相关文章

      网友评论

          本文标题:mysql主从复制配置

          本文链接:https://www.haomeiwen.com/subject/dcczvctx.html