# Window环境下的MySQL主从复制
## 复制前的准备工作
准备两台安装MySQL的计算机,既可实现两台MySQL服务器主从复制备份操作
在MySQL目录下面的配置文件my.ini
```ini
[mysqld]
log_bin = "D:/MySQLlog/binlog"
expire_logs_days = 10
max_binlong_size = 100M
```
此时我们需要在D盘下面创建MySQLlog文件夹,binlog日志记录在该文件里面
|参数|说明|
|-|-|
|expire_logs_days|表示二进制日志文件删除的天数|
|max_binlog_size|表示二进制日志文件最大的大小|
登录MySQL之后,可以执行show variables like '%log_bin%'命令来测试下log_bin是否成功开启,如果log_bin参数的值为ON的话,那么表示二进制日志文件已经开启成功
在master上配置所需要的账户
```sql
grant replication slave on *.* to link@'%' identified by '123';
```
在my.ini配置文件中配置Master主机的相关信息
```ini
server-id = 1
binlog-do-db = text
binlog-ignore-db = mysql
```
|参数|说明|
|-|-|
|server-id|表示服务器id,服务器之间id不能一样|
|binlog-do-db|表示要复制的数据库|
|binlog-ignore-db|表示不需要复制的数据库|
重启Master主机的MySQL服务,然后输入show master status命令查询
将Master的数据库备份出来,然后导入到Slave主机中去
```sql
-- 导出数据
mysqldump -u root -p -h 127.0.0.1 text>C:\a.txt;
-- 导入数据
mysqldump -u root -p -h 127.0.0.1 text<C:\a.txt;
```
配置Slave主机
```ini
[mysqld]
log_bin = "D:/MySQLlog/binlog"
expire_logs_days = 10
max_binlong_size = 100M
server-id = 2
```
重启Slave主机
```sql
stop slave;
```
设置Slave从机实现复制相关的信息,命令如下:
```sql
change master to
-> master_host = '192.168.0.1',
-> master_user = 'link',
-> master_password = '123',
-> master_log_file = 'binglog.000003',
-> master_log_pos = 120;
```
|参数|说明|
|-|-|
|master_host|实现复制的主机的ip地址|
|master_user|实现复制的登录远程主机的用户|
|master_password|实现复制的登录远程主机的密码|
|master_log_file|实现复制的binglog日志文件|
|master_log_pos|实现复制的binlog日志文件的偏移量|
继续执行操作
```sql
start slave;
show slave status \G;
```
查看Last_IO_Error是否有错误提示,如果有执行12
重启Master主机,执行show master status \G命令,记下File和Position的值,然后在Slave主机重新设置信息
## 主从复制测试
尝试在Master主机添加一条记录,查看Slave主机是否同步
- 简介
- 数据库
- 数据表
- 创建数据表
- 查看数据表结构
- 修改数据表
- 删除数据表
- 查询数据
- 表单查询
- 聚合查询
- 链接查询
- 子查询
- 联合查询
- 正则查询
- 数据管理
- 数据类型
- 添加数据
- 更新数据
- 删除数据
- 索引
- 索引分类
- 设计原则
- 添加索引
- 查看索引
- 删除索引
- 视图
- 视图操作
- 视图应用
- 事务
- 触发器
- 存储过程和函数
- 变量
- 异常处理
- 光标
- 流程控制
- 存储过程
- 自定义函数
- 内置函数
- 数学
- 字符串
- 日期和时间
- 条件判断
- 系统信息
- 加/解密
- 其他
- 用户管理
- 登录和退出
- 新建用户
- 删除用户
- 修改用户
- 找回ROOT密码
- 权限管理
- 备份恢复
- 备份数据
- 恢复数据
- 日志
- 二进制日志
- 错误日志
- 查询日志
- 慢查询日志
- 性能优化
- 优化查询语句
- 优化数据库结构
- 优化服务器
- 主从复制
- WIN系统主从复制
- Linux单机主从复制
- Linux联机主从复制
- 参数配置
- 日常管理和维护
- 切换主从服务器
- PHP操作
- 连接
- 创建数据库
- 插入数据
- 插入多条数据
- 预处理语句
- 查询数据
- 预处理语句
- 实战应用
- 分表