mysql配置主从同步
时间: 2024-06-14 10:03:46 浏览: 115
以下是MySQL配置主从同步的步骤:
1. 在主服务器上配置MySQL,打开binlog日志功能。在my.cnf文件中添加以下内容:
```
[mysqld]
log-bin=mysql-bin
server-id=1
```
其中,log-bin=mysql-bin表示启用binlog日志,server-id=1表示主服务器的唯一标识。
2. 重启MySQL服务。
3. 在主服务器上创建一个用于从服务器复制的用户,并授予复制权限。例如:
```
CREATE USER 'repl'@'%.example.com' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%.example.com';
```
其中,'repl'@'%.example.com'是从服务器的IP地址或主机名,'password'是复制用户的密码。
4. 在主服务器上查看当前binlog日志文件名和位置:
```
SHOW MASTER STATUS;
```
记下File和Position的值,稍后在从服务器上配置时会用到。
5. 在从服务器上配置MySQL,在my.cnf文件中添加以下内容:
```
[mysqld]
server-id=2
```
其中,server-id=2表示从服务器的唯一标识,必须与主服务器不同。
6. 重启MySQL服务。
7. 在从服务器上执行以下命令,将从服务器连接到主服务器并开始复制:
```
CHANGE MASTER TO
MASTER_HOST='master_host_name',
MASTER_USER='replication_user_name',
MASTER_PASSWORD='replication_password',
MASTER_LOG_FILE='recorded_log_file_name',
MASTER_LOG_POS=recorded_log_position;
```
其中,master_host_name是主服务器的IP地址或主机名,replication_user_name和replication_password是在主服务器上创建的复制用户的用户名和密码,recorded_log_file_name和recorded_log_position是在主服务器上查看到的File和Position的值。
8. 在从服务器上启动I/O线程和SQL线程:
```
START SLAVE;
```
至此,MySQL主从同步配置完成。
阅读全文