虚拟主机域名注册-常见问题数据库问题 → 数据库问题

mysql主从怎么设置同步

  1. 配置主服务器:

  - 在主服务器的配置文件my.cnf中启用二进制日志(binlog)。可以通过在my.cnf文件中添加如下配置来启用: `log_bin = /var/log/mysql/mysql-bin.log`。

  - 重启主服务器以使配置生效。

  2. 创建用于主从同步的用户:

  - 在主服务器上创建新的用户,用于主从同步。可以使用如下命令创建用户并分配权限:

  ```

  CREATE USER 'repl_user'@'slave_ip' IDENTIFIED BY 'password';

  GRANT REPLICATION SLAVE ON *.* TO 'repl_user'@'slave_ip';

  FLUSH PRIVILEGES;

  ```

  - 其中,repl_user是用于同步的用户名,slave_ip是从服务器的IP地址,password是密码。

  3. 获取主服务器的状态信息:

  - 在主服务器上执行如下命令获取主服务器的状态信息:

  ```

  SHOW MASTER STATUS;

  ```

  - 记录下这个命令返回的文件名和位置信息,后续需要在从服务器上使用。

  4. 配置从服务器:

  - 在从服务器的配置文件my.cnf中添加以下配置:

  ```

  server-id = 2

  relay-log = /var/log/mysql/mysql-relay-bin.log

  log_slave_updates = 1

  ```

  `server-id`配置从服务器的唯一标识,`relay-log`配置从服务器的中继日志位置,`log_slave_updates`配置从服务器是否将从主服务器收到的更新写入自己的二进制日志中。

  5. 启动从服务器:

  - 启动从服务器并登录MySQL。

  - 执行如下命令配置从服务器与主服务器的连接及同步信息:

  ```

  CHANGE MASTER TO MASTER_HOST='master_ip', MASTER_USER='repl_user', MASTER_PASSWORD='password', MASTER_LOG_FILE='master_log_file', MASTER_LOG_POS=master_log_position;

  ```

  其中,master_ip是主服务器的IP地址,repl_user和password是在主服务器上创建的用于同步的用户和密码,master_log_file和master_log_position是第三步中获取的主服务器状态信息。

  6. 开启从服务器的主从同步:

  - 在从服务器上执行以下命令开启主从同步:

  ```

  START SLAVE;

  ```

  - 可以使用如下命令检查从服务器的状态是否正常:

  ```

  SHOW SLAVE STATUS\G;

  ```

  如果`Slave_IO_Running`和`Slave_SQL_Running`字段的值都为`Yes`,则表示主从同步已成功启动。

  7. 测试主从同步:

  - 在主服务器上进行一些数据操作,例如插入、更新或删除数据。

  - 在从服务器上查询这些数据,如果查询结果与主服务器一致,则表示主从同步正常。

  通过以上步骤,可以实现MySQL主从同步。请注意,主从复制可以是一对一的,也可以是一对多的。需要注意的是,主从同步只能实现单向的数据复制,而且在主服务器上的写操作才会被复制到从服务器上。如果需要双向同步,可以考虑使用MySQL的双主复制或者其他技术。




免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:bkook@qq.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
【 双击滚屏 】 【 推荐朋友 】 【 收藏 】 【 打印 】 【 关闭 】 【 字体: 】 
上一篇:apache下载及安装方法
下一篇:mysql 多重查询的操作方法
  >> 相关文章
没有相关文章。