【MySQL】mysql实现主从复制(Windows)
2016-12-26 11:19
295 查看
前言
在一些大型的软件中,数据库的安全性是特别重要的,如何保证数据库的安全就成了人们关注的焦点。接下来就要说一下如何以备份数据库的方法来提高数据库的安全性,也就是我们常说的mysql主从复制。安装mysql
首先,要安装mysql,有两种方法,一种安装版msi文件,一种是免安装版zip文件。免安装版需要进行一些配置(如环境变量,my.ini文件等),相对来说,安装版更容易些。我使用的是安装版。安装教程配置主机my.ini
安装好之后,为了能实现主从复制,还需要配置一下my.ini文件(在根目录下)。1、使该文件中的路径与实际安装路径吻合。
2、(server_id =任意数)。此为主服务器,配置从服务器的时候只要与之不同即可。
3、打开二进制日志功能。在从机复制主机中,主机必须打开此功能,从机才可读取同步。
(log-bin ="mysql安装路径/log/log-bin/mysql-bin.log"),同时要在该路径的log文件夹中建立log-bin文件夹。
4、开启慢查询日志功能(可选)
(slow_query_log)
慢查询日志位置(slow_query_log_file="mysql安装路径/log/slow-query/mysqld_slow.log"),同3,要在log文件夹中新建slow-query文件夹。
5、从机my.ini文件只需要将(server_id =任意数),不同于主机即可。
注:()内容写到配置文件的[mysqld]内,配置完毕后需重启mysql服务。
net stop mysql//关闭mysql服务 net start mysql//开启mysql服务
主机与从机实现同步
主机
登陆主机mysql在master服务器上建立账户,并授权slave功能mysql –uroot –p//登录mysql grant replication slave on *.* to 'repl'@'%' identified by 'repl';//创建从机账户,授权slave flush privileges;//刷新权限
从机
登陆从机(slave)mysql在master服务器change master to master_host="主机ip", master_user="repl", master_password="repl";//申请成为主机的slave
start slave;//启动从机服务器 show slave status\G;//检查slave服务器状态
注:同样,配置完成后需重启mysql服务。Slave_IO_Running和Slave_SQL_Running都为yes即为成功。
如果已知主服务器不为新库而从服务器为新库,则需要执行以下操作
flush tables with read lock;//锁定表 mysqldump -uroot -p -A --master-data=1 > /tmp/master_16-09-12.sql//将主机全部数据复制到从机master_16-09-12.sql文件中 unlock tables;//备份完毕后,对数据库解锁。在主服务器建立账户并授权slave之后操作
mysql -uroot -p < master_16-09-12.sql//将之前备份的数据库导入从机库中。从服务器同步前进行
同步问题
问题在执行最后一步查看从机状态时,如果发生“Last_IO_Error: Got fatal error 1236 from master”错误,说明同步失败,比如主库删除了一个从库没有的库,就会出现此错误。
解决办法
从库执行:stop slave;(停止同步)
主库执行:flush logs;(刷新日志)
主库执行:show master status\G;(查看当前日志位置,效果如下)
可以知道此日志位于884位置。
从库执行:change master to master_log_file=’log-bin.000002’,master_log_pos=884;
然后从库再执行:start slave;(启动同步)
总结
mysql主从配置的过程中可能会出各种各样的问题,这些问题在百度一般都能找到解决办法,在此不一一赘述,如有问题,欢迎留言。相关文章推荐
- cool-2018-03-10-windows下实现mysql5.6读写分离、主从复制和一主多从
- 在同一台机器上实现主从复制,多个mysql(windows)
- MySQL主从复制与读写分离在windows系统下的实现(amoeba3.0+mysql5.1实现)因版本问题,本文在原来文章基础上有更改并且本人已经测试成功
- windows上实现Mysql主从复制
- windows 下 MySQL读写分离、主从复制、通过amoeba代理实现读写分离 配置全过程
- 如何在一台windows主机上实现MySQL的主从复制?
- mysql主主复制、主从复制、半同步的实现
- Mysql的主从复制的读写分离之Amoeba实现 推荐
- mysql主从复制的原理及配置实现
- 基于SSL实现MySQL的加密主从复制
- mysql主从复制简单实现
- MYSQL 主从复制读写分离实现
- MYSQL 主从复制读写分离实现
- Mysql的AB复制(主从复制)原理及实现
- Mysql实现主从复制
- MySQL主从复制简单实现过程
- mysql-mmm------实现mysql互为主从复制HA功能
- mysql的主从构架,复制,半同步,SSL加密复制的实现
- 基于RHEL6.0的mysql服务器复制的主从架构实现