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. Android 实现页面跳转并传递参数教程

    首先我们来看一下实现的功能:     第二,我们看一下实现这个功能,总共会接触到哪些文件和代码. 1.实现本功能总共涉及如下6个文件 2.实现本功能,总共涉及如下6个文件中的如下代码: (1) 效果: ...

  2. Android开发 AIDL使用自定义对象作参数或返回值

    http://www.pocketdigi.com/20121129/952.html 默认,AIDL支持对象作参数,但需要该对象实现Parcelable接口,且aidl文件应该是该类在同一包下,需要 ...

  3. transitionFromView方法的使用

    transitionFromView方法的使用 效果 源码 // // ViewController.m // TransitionFromView // // Created by YouXianM ...

  4. 《Erlang程序设计(第2版)》

    <Erlang程序设计(第2版)> 基本信息 作者: (瑞典)Joe Armstrong 译者: 牛化成 丛书名: 图灵程序设计丛书 出版社:人民邮电出版社 ISBN:9787115354 ...

  5. ps -ef | grep 查看进程命令

    通过 ps -ef | grep redis 查看当前Redis 的进程情况.

  6. JAVA垃圾回收机制概要

    垃圾回收是JAVA中的一个大知识点,也是一个著名知识点,毕竟JAVA号称自己先进性的时候总是会带上垃圾回收.于是,它也成了面试中的常客,面试官动不动的就要你解释下什么是垃圾回收,以及它的原理是什么.当 ...

  7. HTTP协议学习【转】

    面试过程中又一个常见的问题,http协议,因为做服务器开发如果用http协议的话,现在各种开源软件都封装好了,python中只需要简单的继承定义好的类,重写get或者post等方法,几行代码就可以搭建 ...

  8. Sicily 1388. Quicksum

    http://soj.me/1388 又一道字符串的水题.... #include <iostream> #include <cstring> using namespace ...

  9. 【转载】Qt Creator 添加自定义注释

    原文:https://blog.csdn.net/liang19890820/article/details/54925434 自定义注释注释的原则是有助于对程序的阅读理解,不宜太多,也不能太少(一般 ...

  10. Valid Palindrome leetcode java

    题目: Given a string, determine if it is a palindrome, considering only alphanumeric characters and ig ...