美文网首页
配置:mysql [主-从]&[主-主]

配置:mysql [主-从]&[主-主]

作者: 坚持到底v2 | 来源:发表于2019-03-28 17:07 被阅读0次

    主数据库配置

    主数据库配置备份用户

    主数据库 上配置 备份用户

    grant replication slave on *.* to '{yourbackupuser}'@'{your_slave_host}' identified by '{yourpwd}';
    

    主数据库配置my.cnf

    [mysqld]
    server-id= 1
    log-bin=mysql-bin #启用日志文件
    binlog-do-db= test #需要同步的数据库
    binlog-ignore-db= mysql #不需要同步的数据库
    
    log-slave-updates
    sync_binlog= 1
    
    auto_increment_offset= 1
    auto_increment_increment= 2
    
    replicate-do-db= test
    replicate-ignore-db= mysql,information_schema
    

    然后重启 mysql , 然后进入 mysql命令行 执行如下命令:

    flush tables with read lock; 锁表以便在同步之前写数据进去。
    show master status\G
    
    ***************************1. row ***************************
    
    File: mysql-bin.000003
    Position: 107
    Binlog_Do_DB: test
    Binlog_Ignore_DB:mysql
    

    这里使用了 锁表 , 目的是为了先不写入新的数据, 好让 从数据库 定位同步位置, 初次同步完成后, 记得解锁 unlock tables;

    记录下 FilePosition , 配置 从数据库 时会用到


    从数据库配置

    从数据库配置my.cnf

    [mysqld]
    server-id= 2
    log-bin=mysql-bin #启用日志文件
    binlog-do-db= test #需要同步的数据库
    binlog-ignore-db= mysql #不需要同步的数据库
    
    log-slave-updates
    sync_binlog= 1
    
    auto_increment_offset= 1
    auto_increment_increment= 2
    
    replicate-do-db= test
    replicate-ignore-db= mysql,information_schema
    

    然后重启 mysql , 然后进入 mysql命令行 执行如下命令:

    stop slave;  #停止slave
    reset slave;
    # 如果是从头开始同步
    change master to master_host='{your_master_host}',master_port={your_master_port},master_user='{yourbackupuser}',master_password='{yourpwd}';
    
    # 如果是从指定位置开始同步
    change master to master_host='{your_master_host}',master_port={your_master_port},master_user='{yourbackupuser}',master_password='{yourpwd}' master_log_file='{master_file}',master_log_pos={master_position};
    
    start slave;
    
    # 查看slave 状态
    show slave status\G;
    
    # 查看这两项是否为YES,yes为正常。
    Slave_IO_Running: Yes
    Slave_SQL_Running: Yes
    

    验证

    配置完成后, 在 主数据库 中创建database、table、及库表的数据,查看 从数据库 数据也自动更新,说明配置成功。


    主-主配置

    所谓 主-主 配置就是 互为 主-从 , 按上述过程反向配置一遍即可.

    相关文章

      网友评论

          本文标题:配置:mysql [主-从]&[主-主]

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