mysql主从复制配置

 

保证主库和从库数据库数据一致

mysql主库MASTER配置(在my.cnf中加入以下配置):
log-bin=master-bin
binlog-do-db=test #需要同步的数据库名称
server-id=11

进行授权:
grant replication slave on *.* to 'repl'@'192.168.1.110' identified by 'repl' with grant option;

重启mysql

查看master状态
show master status;

mysql从库配置(在my.cnf中加入配置):
server-id=12

master-host=192.168.1.104
master-user=repl
master-password=repl
master-port=3306
replicate-do-db=test #需要同步的数据库名称

#停止slave
stop slave

#更改日志同步点
CHANGE MASTER TO MASTER_HOST='192.168.1.104',MASTER_USER='repl', MASTER_PASSWORD='repl',MASTER_LOG_FILE='master-bin.000002',MASTER_POSITION=1134;

#启动slave
start slave

#查看进程
show processlist;
#查看slave
show slave status;

--------------------------------------------------------------------------------

一、主服务器(master)配置

1、修改MySQL配置文件my.ini

[mysqld]

log-bin=mysql-bin
log-bin-index=mysql-bin.index
server-id=1
sync_binlog=1
binlog_format=mixed
binlog-do-db=test
binlog-ignore-db=mysql
binlog-ignore-db=performance_schema
binlog-ignore-db=information_schema

配置完成后重启MySQL服务。

2、授权给从服务器(slave)同步数据的账号密码

GRANT REPLICATION SLAVE ON *.*TO 'root'@'192.168.174.131' IDENTIFIED BY '123456';

参数说明:

  • root:slave连接master使用的账号
  • IDENTIFIED BY '123456' :slave连接master使用的密码
  • 192.168.174.130:slave IP

执行命令show master status\G;

注意结果中的File和Position,配置从服务器(slave)时会用到。

二、从服务器(slave)配置

1、修改MySQL配置文件my.ini

[mysqld]

server-id=2
log-bin=mysql-bin
relay-log-index=slave-relay-bin.index
relay-log=slave-relay-bin
sync_master_info=1
sync_relay_log=1
sync_relay_log_info=1

2、设置连接主服务器(master)的信息

change master to master_host='192.168.174.130',master_user='root',master_port=3306,master_password='root',master_log_file='mysql-bin.000008',master_log_pos='170'

参数说明:

  • master_host:master IP
  • master_user:master数据库通过GRANT授权的账号
  • master_port:master数据库使用的端口号
  • master_password:master数据库通过GRANT授权的密码
  • master_log_file:master数据库中通过show master status\G显示的File名称
  • master_log_pos:master数据库中通过show master status\G显示的Position数据

重启MySql服务。

执行命令:start slave。

执行命令:show slave status\G。

当Slave_IO_Running与Slave_SQL_Running都为Yes时才算配置成功。

此时,master服务器上test数据库里的数据就能同步到slave服务器上的test数据库中。

三、使用MySQL Proxy实现读写分离

在此使用配置文件的方式来进行配置。

配置文件mysql-proxy.conf中的内容主要包括:

[mysql-proxy]
admin-username=root
admin-password=123456
admin-lua-script=C:/mysql-proxy/lib/mysql-proxy/lua/admin.lua
proxy-backend-addresses=192.168.174.130:3306
proxy-read-only-backend-addresses=192.168.174.131:3306
proxy-lua-script=C:/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua
log-file=C:/mysql-proxy/log/mysql-proxy.log
log-level=debug
daemon=true
keepalive=true

执行命令:

mysql-proxy -P 192.168.174.133:4040 --defaults-file=C:/mysql-proxy/bin/mysql-proxy.conf

查看日志文件mysql-proxy.log:

2014-12-19 16:27:40: (critical) plugin proxy 0.8.5 started
2014-12-19 16:27:40: (debug) max open file-descriptors = 512
2014-12-19 16:27:40: (message) proxy listening on port 192.168.174.133:4040
2014-12-19 16:27:40: (message) added read/write backend: 192.168.174.130:3306
2014-12-19 16:27:40: (message) added read-only backend: 192.168.174.131:3306

出现以上日志信息则表示MySQL Proxy启动成功,此时便可以实现读写分离了。

注意:由于rw-splitting.lua中的min_idle_connections的默认值为4,即当会话数达到最小为4时,才会进行读写分离,在此我们将其改为1,则可直接进行读写分离。

MySQL下载地址:http://yunpan.cn/cfWp4tZDACvnp  提取码 b0db

MySQL Proxy下载地址:http://yunpan.cn/cfWpikpQWCsxM  提取码 ad1c

Windows操作系统下的MySQL主从复制及读写分离[转]的更多相关文章

  1. Windows操作系统下的MySQL主从复制及读写分离

    一.主服务器(master)配置 1.修改MySQL配置文件my.ini [mysqld] log-bin=mysql-binlog-bin-index=mysql-bin.indexserver-i ...

  2. Linux下MySQL主从复制(GTID)+读写分离(ProxySQL)-实施笔记

    GTID概念: GTID( Global Transaction Identifier)全局事务标识.GTID 是 5.6 版本引入的一个有关于主从复制的重大改进,相对于之前版本基于 Binlog 文 ...

  3. mysql主从复制以及读写分离

    之前我们已经对LNMP平台的Nginx做过了负载均衡以及高可用的部署,今天我们就通过一些技术来提升数据的高可用以及数据库性能的提升. 一.mysql主从复制 首先我们先来看一下主从复制能够解决什么问题 ...

  4. Mysql主从复制,读写分离

    一个简单完整的 Mysql 主从复制,读写分离的示意图. 1. 首先搭建 Mysql 主从架构,实现 将 mater 数据自动复制到 slave MySQL 复制的工作方式很简单,一台服务器作为主机, ...

  5. Mysql 主从复制,读写分离设置

    一个简单完整的 Mysql 主从复制,读写分离的示意图. 1. 首先搭建 Mysql 主从架构,实现 将 mater 数据自动复制到 slave MySQL 复制的工作方式很简单,一台服务器作为主机, ...

  6. MySQL 主从复制与读写分离 (超详细图文并茂小白闭着眼睛都会做)

    MySQL 主从复制与读写分离 1.什么是读写分离 2.为什么要读写分离 3.什么时候要读写分离 4.主从复制与读写分离 5.mysql支持的复制类型 6.主从复制的工作过程 7.MySQL主从复制延 ...

  7. 30.Mysql主从复制、读写分离

    Mysql主从复制.读写分离 目录 Mysql主从复制.读写分离 读写分离 读写分离概述 为什么要读写分离 什么时候要读写分离 主从复制与读写分离 mysql支持的复制类型 主从复制的工作过程 初始环 ...

  8. Mysql主从复制,读写分离(mysql-proxy),双主结构完整构建过程

    下面介绍MySQL主从复制,读写分离,双主结构完整构建过程,不涉及过多理论,只有实验和配置的过程. Mysql主从复制(转载请注明出处,博文地址:) 原理是master将改变记录到二进制日志(bina ...

  9. Mysql主从复制,读写分离(mysql-proxy)

    Mysql主从复制,读写分离(mysql-proxy) 下面介绍MySQL主从复制,读写分离,双主结构完整构建过程,不涉及过多理论,只有实验和配置的过程. Mysql主从复制(转载请注明出处,博文地址 ...

随机推荐

  1. NSZombie 详解 -僵尸对象

    1.什么是僵尸对象? 简而言之,就是过度释放的对象. 2.僵尸对象有什么特点? 如果一个对象a被变成了僵尸对象,那么,在进行下面的判断时,a是会被系统当成一个对象来进行判断的.但是,如果你使用a进行其 ...

  2. 一文犀利看懂中美贸易战 z

    如今的中国面对着前所未有的经济全球化的大环境.面对着如何成为创新性国家的重任. 钛媒体注:美国东部时间 7 月 6 日凌晨0:01 分,美国正式开始对 340 亿美元的中国产品加征 25% 的关税,这 ...

  3. PlaceholderTextView

    PlaceholderTextView 效果 源码 https://github.com/YouXianMing/UI-Component-Collection 的 PlaceholderTextVi ...

  4. Mac与Mac之中的共享方式

    前往 ---> 连接服务器  ---> 输入smb://带连接的服务器地址(smb://192.168.1.40)即可

  5. SVG Path路径使用(一)

    一.<path> 标签 <path> 标签用来定义路径. 下面的命令可用于路径数据: M = moveto L = lineto H = horizontal lineto V ...

  6. Promise is rejected: Error: 2 UNKNOWN: error starting container: API error (404): {"message":"network build-blockchain-insurance-app_default not found"}出错的解决方案

    错误描述: docker logs web 现象: > blockchain-for-insurance@2.1.0 serve /app > cross-env NODE_ENV=pro ...

  7. Spring框架中IoC(控制反转)的原理(转)

    原文链接:Spring框架中IoC(控制反转)的原理 一.IoC的基础知识以及原理: 1.IoC理论的背景:在采用面向对象方法设计的软件系统中,底层实现都是由N个对象组成的,所有的对象通过彼此的合作, ...

  8. 试用ArcGIS Server 10.1 X64 for windows

    ArcGIS 10.1 发布已经很久了,其Server只支持x64,为此我还专门下载安装了windows Server 2003 x64,进行安装测试. 我测试了集群功能,比起10.0 ,没有使用域控 ...

  9. Longest Palindromic Substring leetcode java

    题目: Given a string S, find the longest palindromic substring in S. You may assume that the maximum l ...

  10. MySql 5.7安装(随机密码,修改默认密码)两个坑

    MySql 5.7安装(随机密码,修改默认密 下载了MySql 最新版本,安装的过程中,发现了很多新特性 1.data目录不见了 在进行my-default.ini配置的时候 (需要配置 # base ...