根据提供的文档内容,我们可以整理出关于 MySQL 主从配置的关键知识点,包括配置的步骤、注意事项以及具体的操作细节等。
### MySQL 主从配置知识点
#### 一、概览
MySQL 的主从配置是一种常见的高可用性和数据冗余解决方案。通过将一个 MySQL 服务器(主服务器)的数据实时或定时复制到另一个或多个 MySQL 服务器(从服务器),可以实现数据的备份和读写分离等功能,提高系统的稳定性和性能。主服务器负责处理所有的写操作和部分读操作,而从服务器则主要处理读取请求。
#### 二、准备工作
1. **网络环境**:确保主服务器和从服务器处于同一网段,例如文档中的示例 IP 地址分别为 `192.168.0.100` 和 `192.168.0.101`。
2. **MySQL 版本**:文档提到使用的 MySQL 版本为 `5.5.15`,安装路径为 `D:\MySQL\`。
3. **所需软件**:
- MySQL 管理客户端:Navicat 8 for MySQL (Windows)。
- 编辑工具:Notepad++,推荐用于修改 MySQL 配置文件。
#### 三、配置主服务器(Master)
1. **停止 MySQL 服务**:在命令行中执行 `net stop mysql` 或 `sc stop mysql`。
2. **编辑配置文件**:
- 找到 MySQL 安装目录下的配置文件 `my.ini`(Linux 系统下为 `my.cnf`)。
- 在文件末尾添加以下行:
- `server-id=1`:为主服务器分配一个唯一 ID。
- `log-bin=NEW_NAME`:启用二进制日志记录,并指定日志文件名。
- `binlog-do-db=bojinv2`:指定需要进行主从复制的数据库名。
- `binlog-ignore-db=mysql`:指定不需要进行主从复制的数据库名。
3. **重启 MySQL 服务**:在命令行中执行 `net start mysql` 或 `sc start mysql`。
4. **授权从服务器用户**:
- 使用 MySQL 命令行客户端登录数据库。
- 执行 SQL 授权语句,例如:
```
GRANT REPLICATION SLAVE ON *.* TO slaveuser@'192.168.0.101' IDENTIFIED BY '123456';
FLUSH PRIVILEGES;
SHOW MASTER STATUS;
```
- 记录输出结果中的 `File` 和 `Position` 字段的值,这些信息将用于从服务器的配置。
5. **停止 MySQL 服务**:再次停止 MySQL 服务以便下一步操作。
#### 四、配置从服务器(Slave)
1. **停止 MySQL 服务**:在命令行中执行 `net stop mysql` 或 `sc stop mysql`。
2. **编辑配置文件**:
- 修改 `my.ini` 文件(Linux 下为 `my.cnf`),添加以下行:
- `server-id=2`:为从服务器分配一个唯一 ID。
- `log-bin=NEW_NAME`:虽然不是必须,但为了完整性可以加上。
- `binlog-do-db=bojinv2`:指定需要进行主从复制的数据库名。
- `binlog-ignore-db=mysql`:指定不需要进行主从复制的数据库名。
- `relay-log=slave_relay_log`:指定中继日志文件名。
- `master-host=192.168.0.100`:指定主服务器的 IP 地址。
- `master-user=slaveuser`:指定授权用户的用户名。
- `master-password=123456`:指定授权用户的密码。
- `master-log-file=NEW_NAME.000001`:指定主服务器的二进制日志文件名。
- `master-log-pos=107`:指定二进制日志的位置。
3. **重启 MySQL 服务**:在命令行中执行 `net start mysql` 或 `sc start mysql`。
4. **检查从服务器状态**:
- 登录从服务器的 MySQL,执行 `SHOW SLAVE STATUS\G` 命令,检查从服务器的状态是否正常。
#### 五、注意事项
- **数据一致性**:在设置主从复制前,请确保主服务器和从服务器的数据完全一致。
- **二进制日志**:确保主服务器开启了二进制日志功能,这是实现主从复制的前提。
- **权限设置**:确保为从服务器设置的用户具有足够的权限进行数据复制。
- **错误处理**:在配置过程中遇到任何错误,应及时排查解决,避免影响后续操作。
以上就是基于提供的文档内容整理出的 MySQL 主从配置的关键知识点。通过这些步骤,可以成功地实现 MySQL 的主从复制,从而提高系统的稳定性和数据安全性。