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

mysql主从复制配置

作者: 郭文猛 | 来源:发表于2019-08-14 19:08 被阅读0次

    https://learnku.com/laravel/t/3174/mysql-master-slave-replication-simple-configuration-simple-absolutely-can-be-used

    一;主库配置
    1.配置 mysql
    1.1#vi /etc/mysql/my.cnf
    [mysqld]
    log-bin=mysql-bin #[必须]启用二进制日志
    server-id=109 #[必须]服务器唯一ID,默认是1,一般取IP最后一段

    1.2检查 mysql 是否允许远程连接

    2.进入 mysql 终端,新建 mysql 用户(从服务器用到此账号配置)slave
    grant replication slave on . to 'salve'@'192.168.71.%' identified by 'qwerJKL/1';

    3.刷新一下权限表
    flush privileges;

    4.重启 mysql
    systemctl restart mysqld

    5.进入 mysql 终端查看 master 状态
    show master status;

    二:从库配置
    1.配置 mysql 的 my.ini 并重启
    [mysqld]
    log-bin=mysql-bin #[可选]启用二进制日志
    server-id=70

    1. 登录 mysql 终端后执行
      mysql> change master to master_host='192.168.71.109',master_user='salve',master_password='qwerJKL/1',master_log_file='mysql-bin.000002',master_log_pos=154;

    3.启动 slave 从库
    mysql> start slave;

    4.查看 slave 从库
    mysql> show slave status\G;
    注:Slave_IO_Running 和 Slave_SQL_Running 必须都为 Yes 才算成功。

    三:测试
    ubuntu mysql
    mysql> create database test_repl;
    然后查看 xp mysql 如果出现 test_repl 库则说明主从复制配置成功
    mysql> show databases;

    四:遇到的问题
    1.修改hostname
    修改配置文件/etc/hostname来实现主机名的修改。把该文件内容hostname name中的name替换成自己想要的主机名重启即可。
    vim /etc/hostname

    2.查看slave从库状态是遇到错误 slave have equal MySQL server UUIDs
    解决:https://blog.csdn.net/leshami/article/details/43854505
    https://blog.csdn.net/cug_jiang126com/article/details/46846031

    五:结尾
    这只是最基本的配置,还有很多配置命令就不折腾了。测试时发现之前库不一致时我在主库里面添加一张表,而从库没有那个库,导致从库 slave 会报错,执行这个命令后重启从库就可以跳过这个错误。

    SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1 跳过一个事务

    相关文章

      网友评论

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

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