Windows系统环境下创建mysql主从数据库方法(双向主从复制)
创建mysql主从数据库方法(双向主从复制)
(一)Windows系统下的MySQL主从复制(单向复制)
(1)环境说明:
1,Mysql版本:mysql5.7.20(主从机mysql版本必须一致)
2,服务器一:
主机(master)
IP:192.168.1.33 (外网:171.221.207.147:9550)
mysql端口3307
用户:root(spaceon)
服务器二:
从机(slave)
IP: 192.168.1.27 (外网:171.221.207.147:9542)
mysql端口3306
用户:root(spaceon)
3,需部署的数据库:school
4,主机配置:
进入mysql安装目录,找到配置文件my.ini;
编辑my.ini文件:
[mysqld]
port=3307
# Server Id.
server-id=9550
binlog-do-db=school
log-bin=mysql-log
配置结束后重启master的mysql服务。通过mysql的“MySQL5.7 Command Line Client-Unicode”命令窗口给要连接的从服务器设置权限 :
grant replication slave,reload,super on *.* to root@192.168.1.27 identified by 'spaceon';
*ps: 给从机192.168.2.35添加权限,用户名:root,密码:spaceon
输入命令 show master status; 找到File 和 Position 的值记录下来;
5,从机配置:
1.进入mysql安装目录下:打开my.ini文件
2.编辑my.ini文件:
[mysqld]
port=3306
# Server Id.
server-id=9542(与主机不同即可)
replicate-do-db=school
在从机上测试能否登录主机数据库(可通过Navicat测试),成功后退出主机数据库。修改对主数据库的连接的参数:
change master to master_host='192.168.1.33',master_port=3307,master_user='root',master_password='spaceon', master_log_file='mysql-log.000003',master_log_pos=463;
ps: master_log_file和master_log_pos的值分别为之前在主机运行show master status时记录下的File和Position的结果。
如果报错误,说slave线程正在运行,不能设置,这样的话,执行mysql>stop slave; 停止slave线程,然后再设置连接的参数;
设置完之后,执行 mysql> start slave; 开启slave线程;执行mysql> show slave status\G (没有分号),查看以下两项,均为YES则成功。
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
(二)windows系统下mysql双向同步复制(互为主从)
1,再次修改服务器一的mysql的配置文件(my.ini)
[mysqld]
# for rep1
server-id=9550
log-bin=mysql-bin
2,再次修改服务器二的mysql的配置文件(my.ini)
[mysqld]
# for rep1
server-id=9542
log-bin=mysql-bin
3,配置双向主从复制:
(1)主库:192.168.1.27 从库:192.168.1.33
1,指定服务器二mysql为服务器一mysql的主库(在服务器二mysql中为服务器一mysql设置权限):
grant replication slave,reload,super on *.* to root@'192.168.1.33' identified by 'spaceon';
2,查询服务器二mysql当前状态,并记录file和position的值:
Show master status;
3, 停止服务器一mysql的slave:
Stop slave;
4,服务器一mysql连接服务器二mysql(master_log_file和master_log_pos 值为之前第2步记录的file和position的值),在服务器 一中输入mysql命令:
change master to master_host='192.168.1.27',master_port=3306,master_user='root',master_password='spaceon',master_log_file='mysql-bin.000001',master_log_pos=455;
5,开启服务器一mysql的slave:start slave;
6, 查看是否连接成功(查看slave_IO_running和slave_sql_running是否为yes,若为yes则连接成功):show slave status;
(2) 主库:192.168.1.33 从库:192.168.1.27
1,指定服务器一mysql为服务器二mysql的主库(在服务器一mysql中为服务器二mysql设置权限):
GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* TO root@'192.168.1.27' IDENTIFIED BY 'spaceon';
Reset master;
2, 查询服务器一mysql当前状态,并记录file和position的值:show master status;
3, 停止服务器二mysql的slave:stop slave;
4,服务器二mysql连接服务器一mysql(master_log_file和master_log_pos 值为之前第2步记录的file和position的值),在服务器 二中输入mysql命令:
change master to master_host='192.168.1.33',master_port=3307,master_user='root',master_password='spaceon', master_log_file='mysql-log.000003',master_log_pos=463;
5,开启服务器二mysql的slave:start slave;
6,查看是否连接成功(查看slave_IO_running和slave_sql_running是否为yes,若为yes则连接成功):show slave status;
最后可通过Navicat验证数据库双向主从复制功能。
Windows系统环境下创建mysql主从数据库方法(双向主从复制)的更多相关文章
- windows环境下搭建mysql主从
参考 windows环境下mysql主从配置 1. 环境 参数 说明 主库所在的操作系统 win7 主库的版本 mysql-5.6.46-winx64 主库的ip地址 127.0.0.1 主库的端口 ...
- MacOS使用Docker创建MySQL主从数据库
一.拉取MySQL镜像 通过终端获取最新的MySQL镜像 docker pull mysql/mysql-server 二.创建MySQL数据库容器配置文件对应目录 我们在当前用户下创建一组目录,用来 ...
- Windows环境下部署MySQL主从并模拟升级到8.0
GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 一.部署实例 1.下载2个软件 http://ftp.kaist.ac.kr/mysql/Downloads/MySQL- ...
- Windows系统下安装MySQL 8.0.11数据库
MySQL数据库是常用的数据库之一,而且该数据库开源免费,所以很多公司在使用.本文记录如何在Windows系统下安装MySQL数据库,本次安装的版本号为8.0.11,这个版本是当前的最新版本,据宣传, ...
- linux下搭建mysql主从
在master上创建repl账户,用于复制. grant replication slave on *.* to 'repl'@'%' identified by 'P@$$W0rd'; flush ...
- windows 系统本地做mysql 主从同步,最后面解决主从同步库名不一致,表结构一致
原文:windows 系统本地做mysql 主从同步,最后面解决主从同步库名不一致,表结构一致 mysql主从同步的好处以及原理 之前看到很多新闻说某某的服务器奔溃,磁盘碎了,导致数据丢失 ...
- 搭建windows环境下(nginx+mysql+php)开发环境
搭建windows环境下(nginx+mysql+php)开发环境 1. 所需准备应用程序包 1.1 nginx 程序包nginx-1.0.4.zip或其他版本(下载地址: http ...
- Linux下的MySQL主从同步
网上一些关于Linux下的MySQL主从同步教程非常之多,有些很简单的配置却弄的非常复杂,有些根本无法配通,下面是我通过简单的配置完成的主从同步过程,大家可以参考,此文章更适用于新手. 一.测试环境: ...
- windows环境下创建 .文件夹
一.windows环境下创建 .文件夹 1.新建一个文件夹 2.重命名为.properties.(名字前后都加点) 二.windows环境下创建 .文件 1.上面的方法对文件同样适用 2.运行CMD, ...
随机推荐
- c#NPOI读取excel 比interop和Microsoft.Jet.OLEDB.4.0 之类 的好的多
今天下午开始整理excel这块, 微软弄的那些库简直是个坑, 什么com注册之类的净是些报错. 在网上搜资料偶然碰见npoi ,好东西,值得使用 NPOI是指构建在POI 3.x版本之上的一个程序,N ...
- 解决安装xcode后git使用报错的问题
一.现象: htmlxdeMacBook-Pro:demo htmlx$ git status Agreeing to the Xcode/iOS license requires admin pri ...
- java特殊字符分隔符
点,string.split("[.]") . 竖线, string.split("\\|"). 星号, string.split("\\*" ...
- 常见bat(批处理)命令的语法规则
最近由于在做cocos2d的项目,需要用到一些bat命令,在此做些记录. bat命令用txt文本编辑就行,编辑完之后将后缀名改为bat即可运行.先来一个最简单的例子: @echo off echo \ ...
- (22)Embrace the near win
https://www.ted.com/talks/sarah_lewis_embrace_the_near_win/transcript?referrer=playlist-talks_to_get ...
- TensorFlow环境搭建
1.使用pip安装TensorFlow 第一步安装pip: 先安装python 官网下载地址https://www.python.org在里面选择适合自己的版本 安装python的过程中pip也会随之 ...
- h5移动网页唤起App
最近这个困惑了很久,不断的有一些坑,目前还有疑问关于iOS唤起无效时会出现弹框的问题,这个最后再说 1.首先可能需要判断当前浏览器的来源(目前开发的App还没有上架,所以针对腾讯出品的大家广为人知的微 ...
- python_day1_程序交互
程序交互 在编写程序过程中总会有程序与用户交互的场景出现,这里面提到python会使用一个方法:input 用法: 例如:请用户输入一个账号 input"Please input your ...
- poj 2505 A multiplication game
题目 题意:两个人轮流玩游戏,Stan先手,数字 p从1开始,Stan乘以一个2-9的数,然后Ollie再乘以一个2-9的数,直到谁先将p乘到p>=n时那个人就赢了,而且轮到某人时,某人必须乘以 ...
- 8.AOP全自动
CGLIB字节码增强 l没有接口,只有实现类. 采用字节码增强框架 cglib,在运行时 创建目标类的子类,从而对目标类进行增强. 导入jar包: 自己导包(了解): 核心:hibernate-dis ...