注意:mysql主从复制,主从版本要一致!
生手永远在学习的路上,为了学习mysql主从复制,实现读写分离,于是在本地安装多个mysql实例来进行验证。
也因此有了下面的笔记,一来自我总结一下经验,二来独乐乐不如众乐乐
下载安装包 https://dev.mysql.com/downloads/mysql/5.7.html#downloads  ,解压,在此,我下载的是5.7.24版本
先来配置一下主服务:
1.在此目录下新建一个my.ini的mysql配置文件,同时新建data,logs文件夹
2.配置my.ini
port = 3305
basedir=C:\ProgramData\MySQL\mysql-5.7.24-master-3305 #(mysql文件夹路径)
datadir=C:\ProgramData\MySQL\mysql-5.7.24-master-3305\data #(data路径,存放日志文件)
log-bin=master-bin 数据库备份文件名称,可自由取,生成后会带文件序列号,服务每重启一次就会产生一个新文件
server-id = 1
binlog-do-db=test 表示需要备份的数据库为test
binlog-ignore-db=mysql 表示不需要备份的数据库为mysql
如果两个都不设的话,从服务器会复制主服务器的全部数据库 (本人就是此设置)
log-bin=mysql-bin 表示开启二进制日志,并把二进制日志前缀改为mysql-bin
 
3.dos-->cmd,进入bin目录
(1)进行初始化服务:mysqld --initialize --console,会在控制台打印初始化信息,此时data目录下也会生成一些初始化文件,并且控制台会打印出初始化的密码
(2)安装:mysqld --install MYSQLMaster,MYSQLMaster是服务名,自己看心情取,看到Service successfully installed就表示服务安装成功
这时候,在任务管理器可以看到MYSQLMaster这个服务,只不过还是未启动状态。
(3)启动服务:net start MYSQLMaster(也可以在任务管理器的服务里面启动)
 
4.修改密码,需要加上端口号连接数据库,否则访问的是默认3306端口的数据库
mysql -uroot -P3305 -p
 
5.修改账号密码:
切换数据库,用户信息在mysql库的user表了里:use mysql
更新密码:update user set authentication_string=password("root") where user="root";--password()是mysql的一个加密函数
刷新账户信息:flush privileges;
然后运行mysql -uroot -proot就可以用root用户名和root密码登陆了
看看当前初始化的数据库:show databases;
启动主服务器后,可继续在dos界面或者用sqlyog连接工具在mysql中创建新用户授权,也可用直接root用户,在此我选择新建个人用户。
create user 'liuliuyan'@'%' identified by '123456';
给新用户配置主从复制的权限:
grant replication slave on *.* to 'liuliuyan'@'%' identified by '123456';
注:
@后面的ip地址为允许连接的客户端的ip地址,如果改为 ‘%’,就表示客户端没有ip地址的限制
然后查看主服务master的状态: (每重启一次mysql服务,mysql-bin的日志就会新建一个,所以重启主服务,从服务必须先停止再重新配置后启动)
7.查看主库的当前状态
show master status;
 
注:
请记住这个File和Position,File是同步给从库的数据库文件,到时候授权给从库时要用
二、从库安装和配置
1.从主库拷贝一份解压文件并复制一份主库的my.ini文件过来修改配置
[mysqld]
port = 3308
basedir=C:\ProgramData\MySQL\mysql-5.7.24-slave-3308
datadir=C:\ProgramData\MySQL\mysql-5.7.24-slave-3308\data
log-bin=master-bin
server-id = 2
replicate-do-db=test #同步某库
#同步某表用 replicate-wild-do-table
replicate-wild-do-table =test.test
replicate-wild-do-table =test.test1
replicate-wild-do-table =test.test2
2.保存后像操作主库一样进行初始化,安装,启动等操作
3.启动从库后执行如下命令指定主库
change master to master_host='localhost',master_user='liuliuyan',master_password='123456',master_port=3305,master_log_file='master-bin.000003',master_log_pos=1245;
参数详解:
master_host: 主服务器的IP
master_user: 主服务器上新创建的用户名
master_password: 用户的密码
master_port: 主服务器的端口,如果未曾修改,默认即可。
master_log_file: 主服务器二进制日志文件的名称,填写查看主服务器的master状态时显示的File的值
4.启动从服务的slave复制功能:
start slave;
5.查从服务器的slave状态
show slave status \G;
如果 Slave_IO_Running 和 Slave_SQL_Running 的值都为 Yes,则说明主从复制的所有配置已成功,即从服务器已经可以自动与主服务器的数据库数据实现同步了。
 
三、两个状态是ok就主从配置好了,接下来各位可以测试一下,我的测试成功了,在主库创建库,创建表后,从库都能同步到。perfect!

windows10 mysql主从复制配置的更多相关文章

  1. MYSQL主从复制配置(整理)

    MYSQL主从原理及过程 原理 Mysql的 Replication 是一个异步的复制过程(mysql5.1.7以上版本分为异步复制和半同步两种模式),从一个 Mysql instace(我们称之为 ...

  2. mysql主从复制配置

    使用mysql主从复制的好处有: 1.采用主从服务器这种架构,稳定性得以提升.如果主服务器发生故障,我们可以使用从服务器来提供服务. 2.在主从服务器上分开处理用户的请求,可以提升数据处理效率. 3. ...

  3. 一.Mysql主从复制配置

    在我之前的文章四·安装mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz(基于Centos7源码安装 和 九.mysql数据库多实例安装mysqld_multi [st ...

  4. Mysql学习总结(14)——Mysql主从复制配置

    mysql主从复制 怎么安装mysql数据库,这里不说了,只说它的主从复制,步骤如下: 1.主从服务器分别作以下操作:   1.1.版本一致   1.2.初始化表,并在后台启动mysql   1.3. ...

  5. Linux 笔记 - 第二十三章 MySQL 主从复制配置

    一.前言 MySQL Replication,也被称为主从复制.AB 复制.简单来说就是 A 和 B 两台服务器做主从后,在 A 服务器上写入数据,B 服务器上也会跟着写入输入,两者之间的数据是实时同 ...

  6. linux mysql主从复制配置

    1.设置主库master的servie-id值并且开启bin-log功能参数vi /etc/my.cnf修改my.cnf的参数:[mysqld]server-id=1 //每一个库的server-id ...

  7. mysql主从复制配置(精简版)

    一.首先准备两台服务器,虚拟机即可,以笔者为例:master:192.168.1.105 slave:192.168.1.106 二.保证两台虚拟机能相互ping通,先把防火墙关闭:service i ...

  8. MySQL主从复制配置(Docker容器内配置)

    主从工作原理: 配置介绍: MASTER:172.17.0.2 SLAVE:172.17.0.3 MASTER内数据库: 仅仅同步以上两个库(在configerdata库中创建了wu2表) SLAVE ...

  9. mysql 主从复制配置

    环境:已经在centos下安装好mysql,安装参考:http://www.cnblogs.com/bookwed/p/5896619.html,安装好主数据库后,可以克隆一份,注意修改ip等. 19 ...

随机推荐

  1. Tomcat 8.5 配置 SSL 证书

    前文: 1.以上内容仅支持Linux-Tomcat配置 正文: 说一下我遇到的坑,我使用的服务器是阿里云服务器,阿里云提供的云服务器Tomcat配置SSL是7.0版本,跟8.5出入较大. 以下为阿里提 ...

  2. zabbix客户端监控

    1.安装zabbix客户端软件: yum install -y zabbix20-agent2.修改配置文件vim /etc/zabbix_agentd.conf修改如下: (1)更改Server,S ...

  3. openstack核心组件--keystone(1)

    一.keystone介绍 keystone 是OpenStack的组件之一,用于为OpenStack家族中的其它组件成员提供统一的认证服务,包括身份验证.令牌的发放和校验.服务列表.用户权限的定义等等 ...

  4. django使用session来保存用户登录状态

    先建好登录用的model,其次理解使用cookie和session的原理,一个在本机保存,一个在服务器保存 使用session好处,可以设置登录过期的时间, 编写views中login的函数 def ...

  5. Docker在windows环境下的安装部署

    一.准备 系统环境:Windows 10 64bit Docker安装包:Docker for Windows Installer.exe 二.安装步骤 1.开启系统的hyper-v 2. 重启电脑后 ...

  6. Qt qss问题总结

    1.在QWidget中设定了setObjectName,就是不起作用. 解决方法重写paintEvent. #ifndef BROWSEWIDGET_H #define BROWSEWIDGET_H ...

  7. Opencv实现的陷波滤波器

    在本示例中,共设计了三个函数,分别是巴特沃斯滤波器BLPF().巴特沃斯陷波滤波器notchFilter_BTW().高斯陷波滤波器notchFilter_GAUSS() 巴特沃斯陷波滤波器参见书上6 ...

  8. 搭建elk集群 disabled in libcurl elasticsearch-6.2.2 更新license 版本

    0.logstash的部分配置 output { stdout {codec => rubydebug} elasticsearch { hosts => ["172.31.25 ...

  9. MVC、MVP、MVVM模式的概念与区别

    1. MVC框架 MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界面显示 ...

  10. 使用PowerShell 修改hosts

    直接上代码 # author:lttr <www.cnblogs.com/GoCircle> # date:2019-08-09[CmdletBinding()] param ( [Par ...