wamp环境下MySQL配置主从复制
2017-11-27 19:14
519 查看
上篇文章提到了wamp环境下怎么安装两个数据库,那么window下配置MySQL主从复制就简单了。
步骤一:找到我们的主库下的my.ini文件,我的文件是在 D:\wamp64\bin\mysql\mysql5.7.14 目录下
修改我们的配置文件
[mysqld]
port = 3306
server-id=1 // 可自己定义不要与从库重复
log-bin=mysql-bin // 启用二进制日志
binlog-do-db=test // 需要配置的数据库
修改data目录下的auto.cnf 文件
修改 server-uuid 的值不要与从库重复(刚开始我没配这个后来一直报错),注意:修改后如果出现mysql服务不能启动,可以退出wamp重新打开试试
步骤二:找到我们的从库下的my.ini文件,我的文件是在 D:\wamp64\bin\mysql2\mysql5.7.14 目录下
修改我们的配置文件
[mysqld]
port = 3308
server-id=2 // 可自己定义不要与主库重复
log-bin=mysql-bin // 启用二进制日志
binlog-do-db=test // 需要配置的数据库
步骤三:重启两个数据库,从库的MySQL可以在上篇文章里提到的控制面板,服务里重启
步骤四:在主库里执行show slave status 命令查看file
步骤五:配置从服务器
执行
change master to master_host='127.0.0.1',master_user='root',master_password='',master_log_file='mysql-bin.00000',master_log_pos=308;
master_host为服务器地址,master_user为用户,当然也可以新建个用户,用新用户
Mysql>start slave; //启动从服务器复制功能
步骤六:检查从服务器的复制功能
show slave status\G
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.2.222 //主服务器地址
Master_User: mysync //授权帐户名,尽量避免使用root
Master_Port: 3306 //数据库端口,部分版本没有此行
Connect_Retry: 60
Master_Log_File: mysql-bin.000004
Read_Master_Log_Pos: 600 //#同步读取二进制日志的位置,大于等于Exec_Master_Log_Pos
Relay_Log_File: ddte-relay-bin.000003
Relay_Log_Pos: 251
Relay_Master_Log_File: mysql-bin.000004
Slave_IO_Running: Yes //此状态必须YES
Slave_SQL_Running: Yes //此状态必须YES
注:Slave_IO及Slave_SQL进程必须正常运行,即YES状态,否则都是错误的状态(如:其中一个NO均属错误)。
以上操作过程,主从服务器配置完成。
步骤七:检查复制功能,在主库里添加修改数据,检查从库是否跟着变化
PS : 由于这个是在本地windows环境下做的测试,数据库的地址都是一样的,可项目中真正用到主从复制的时候,主从的地址是不一样的,比如laravel框架,本身就提供了主从复制,只需要把主从服务器的地址配置就行了
所以本地配置在实际开发中没什么意义,但可以作为以后生产环境配置的参考
步骤一:找到我们的主库下的my.ini文件,我的文件是在 D:\wamp64\bin\mysql\mysql5.7.14 目录下
修改我们的配置文件
[mysqld]
port = 3306
server-id=1 // 可自己定义不要与从库重复
log-bin=mysql-bin // 启用二进制日志
binlog-do-db=test // 需要配置的数据库
修改data目录下的auto.cnf 文件
修改 server-uuid 的值不要与从库重复(刚开始我没配这个后来一直报错),注意:修改后如果出现mysql服务不能启动,可以退出wamp重新打开试试
步骤二:找到我们的从库下的my.ini文件,我的文件是在 D:\wamp64\bin\mysql2\mysql5.7.14 目录下
修改我们的配置文件
[mysqld]
port = 3308
server-id=2 // 可自己定义不要与主库重复
log-bin=mysql-bin // 启用二进制日志
binlog-do-db=test // 需要配置的数据库
步骤三:重启两个数据库,从库的MySQL可以在上篇文章里提到的控制面板,服务里重启
步骤四:在主库里执行show slave status 命令查看file
步骤五:配置从服务器
执行
change master to master_host='127.0.0.1',master_user='root',master_password='',master_log_file='mysql-bin.00000',master_log_pos=308;
master_host为服务器地址,master_user为用户,当然也可以新建个用户,用新用户
Mysql>start slave; //启动从服务器复制功能
步骤六:检查从服务器的复制功能
show slave status\G
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.2.222 //主服务器地址
Master_User: mysync //授权帐户名,尽量避免使用root
Master_Port: 3306 //数据库端口,部分版本没有此行
Connect_Retry: 60
Master_Log_File: mysql-bin.000004
Read_Master_Log_Pos: 600 //#同步读取二进制日志的位置,大于等于Exec_Master_Log_Pos
Relay_Log_File: ddte-relay-bin.000003
Relay_Log_Pos: 251
Relay_Master_Log_File: mysql-bin.000004
Slave_IO_Running: Yes //此状态必须YES
Slave_SQL_Running: Yes //此状态必须YES
注:Slave_IO及Slave_SQL进程必须正常运行,即YES状态,否则都是错误的状态(如:其中一个NO均属错误)。
以上操作过程,主从服务器配置完成。
步骤七:检查复制功能,在主库里添加修改数据,检查从库是否跟着变化
PS : 由于这个是在本地windows环境下做的测试,数据库的地址都是一样的,可项目中真正用到主从复制的时候,主从的地址是不一样的,比如laravel框架,本身就提供了主从复制,只需要把主从服务器的地址配置就行了
所以本地配置在实际开发中没什么意义,但可以作为以后生产环境配置的参考
相关文章推荐
- rhel6下,mysql 5.6.14 主从复制(也称mysql AB复制)环境配置[基于binlog] 推荐
- ubuntu环境下配置mysql主从复制
- mysql 5.6.14主从复制(也称mysql AB复制)环境配置方法
- MySQL主从复制配置流程(win7环境,Linux虚拟机结合简单测试演示)
- Linux开发环境搭建(二)--MySQL配置主从复制
- mysql 5.6.14主从复制(也称mysql AB复制)环境配置
- Win7环境MYSQL 主从复制的配置(无插件版)
- MySQL主从复制配置-windows单机环境
- mysql 5.6.14主从复制(也称mysql AB复制)环境配置方法
- Mysql主从复制配置
- MySQL主从复制配置
- mysql主从复制配置
- 分布式架构高可用架构篇_07_MySQL主从复制的配置(CentOS-6.7+MySQL-5.6)
- mysql主从复制简单配置
- mysql主从复制环境搭建
- mysql做主从复制,成功配置案例
- mysql ndbcluster集群复制到innodb单机环境配置搭建
- MySQL主从复制配置
- mysql 主从master-slave同步复制 配置,为读写分离准备
- mysql主从复制配置