mysql怎么设置主从服务器

MySQL设置主从服务器需要修改主服务器的my.cnf文件,添加主服务器信息,然后在从服务器上创建用于复制的用户并授权,最后在从服务器上change master to命令指定主服务器信息。

MySQL主从复制是一种常见的数据备份和读写分离的解决方案,通过主从复制,可以将一个MySQL服务器的数据复制到多个从服务器上,从而实现数据的备份和负载均衡,本文将详细介绍如何在MySQL中设置主从服务器。

准备工作

1、确保主从服务器的操作系统和MySQL版本相同。

mysql怎么设置主从服务器

2、为每个服务器创建一个具有足够权限的用户,用于连接MySQL服务器。

3、在主服务器上创建用于复制的用户。

配置主服务器

1、修改主服务器的配置文件my.cnf(或my.ini),添加以下内容:

[mysqld]
server-id=1
log-bin=mysql-bin
binlog-do-db=需要复制的数据库名

2、重启MySQL服务。

3、在主服务器上创建一个用于复制的用户,并授权:

CREATE USER 'repl'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
FLUSH PRIVILEGES;

4、查看主服务器的二进制日志文件和位置:

SHOW MASTER STATUS;

记下File和Position的值,稍后在从服务器上使用。

配置从服务器

1、修改从服务器的配置文件my.cnf(或my.ini),添加以下内容:

[mysqld]
server-id=2
relay-log=relay-bin

2、重启MySQL服务。

mysql怎么设置主从服务器

3、在从服务器上创建一个用于复制的用户,并授权:

CREATE USER 'repl'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
FLUSH PRIVILEGES;

4、在从服务器上配置主服务器的信息:

CHANGE MASTER TO MASTER_HOST='主服务器IP', MASTER_USER='repl', MASTER_PASSWORD='password', MASTER_LOG_FILE='File值', MASTER_LOG_POS=Position值;

5、启动从服务器的复制进程:

START SLAVE;

6、查看从服务器的复制状态:

SHOW SLAVE STATUSG;

如果Slave_IO_Running和Slave_SQL_Running的值都是Yes,表示主从复制已经成功启动。

常见问题与解答

问题1:从服务器上的复制状态一直是Reading event from the relay log,怎么办?

答:这种情况可能是由于从服务器上的二进制日志文件和位置与主服务器不匹配导致的,请检查从服务器上的配置文件中的MASTER_LOG_FILE和MASTER_LOG_POS值是否与主服务器上的一致,然后重启从服务器的复制进程。

问题2:如何停止主从复制?

答:在主服务器上执行以下命令:

mysql怎么设置主从服务器

STOP SLAVE;

在从服务器上执行以下命令:

STOP SLAVE;

问题3:如何重置主从复制?

答:首先停止主从复制,然后在主服务器上删除二进制日志文件,最后在从服务器上重新配置主服务器的信息并启动复制进程,具体操作如下:

1、停止主从复制。

2、删除主服务器上的二进制日志文件,如果File值为mysql-bin.000001,则执行以下命令:PURGE BINARY LOGS TO 'mysql-bin.000001';

3、在从服务器上重新配置主服务器的信息并启动复制进程。

原创文章,作者:酷盾叔,如若转载,请注明出处:https://www.kdun.com/ask/147140.html

(0)
酷盾叔订阅
上一篇 2024-01-12 23:43
下一篇 2024-01-12 23:46

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购  >>点击进入