mysql主从同步:

 

1.为什么要主从同步?

在Web应用系统中,数据库性能是导致系统性能瓶颈最主要的原因之一。尤其是在大规模系统中,数据库集群已经成为必备的配置之一。集群的好处主要有:查询负载、数据库复制备份等。其中Master负责写操作的负载,也就是说一切写的操作都在Master上进行,而读的操作则分摊到Slave上进行。这样一来的可以大大提高读取的效率。写操作涉及到锁的问题,不管是行锁还是表锁还是块锁,都是比较降低系统执行效率的事情。我们这样的分离是把写操作集中在一个节点上,而读操作其其他的N个节点上进行,从另一个方面有效的提高了读的效率,保证了系统的高可用性。

2.mysql主从同步

我的要同步的两台mysql数据库版本都是mysql5.6,两台电脑都在同一个网段之中。

①修改主数据库my.ini配置:

Server-id = 1  这是数据库ID,此ID是唯一的,ID值不能重复,否则会同步出错;

log-bin = mysql-bin 二进制日志文件,此项为必填项,否则不能同步数据;如果不取名字的话,那么就会以    计算机的名字加编号来命名二进制文件;

binlog-do-db = testcreate  需要同步的数据库,如果还需要同步另外的数据库,那么继续逐条添加,如果    不写,那么默认同步所有的数据库;

binlog-ignore-db = mysql 不需要同步的数据库;

修改完成之后重启mysql服务。

注意点:在linux下,只需要修改/etc/my.cnf即可,但是在windows下,我改了安装目录下的my.ini,发现配置    并不生效,后来我看到了服务中的mysql服务的属性,发现了这么一句话:"C:\Program Files\MySQL\MySQL      Server 5.6\bin\mysqld.exe" --defaults- file="C:\ProgramData\MySQL\MySQL Server 5.6\my.ini"        MySQL56,原来mysql服务读取的配置文件在这里,后来修改了这个路径下的my.ini,重启服务,配置就生效      了。

② 添加主数据库用于同步的账号:

给主数据库授权一个可以进行复制的用户,执行如下命令:

grant replication slave on *.* to 'slave'@'%' identified by '123';

③显示主数据库的同步信息:

可以看出已经产生了二进制的日志文件信息,mysql的同步就是通过这个二进制日志文件进行同步,主数据库把    对数据库的操作的指令都记录到该日志文件下,从数据库通过读取该文件,来对从数据库中的数据进行修改,    从而达到主从同步的效果。

④配置从数据库的my.ini

从数据库的话只需要配置server-id,binlog-do-db,binlog-ignore-db即可。

⑤设置从数据库链接到主数据库

在mysql下执行slave stop命令,停止slave服务;

mysql> change master to

-> master_host='192.168.1.189',

-> master_user='slave',

-> master_password='123',

-> master_log_file='mysql-bin000014.000001',

-> master_log_pos=107;

注意:这里的master_log_file,master_log_pos的值要和master的值一致。否则会无法同步。

执行slave start命令,启动服务。

注意:在这里可能会无法链接到主数据库,需要看主数据库中my.ini中bind 127.0.0.1是否没有被注释,如果     没有,那么只能在本机登录,而不能使用远程登录方式。

⑥验证是否同步:

执行show slave status\G;

得到如下结果则说明同步成功。

也可以在主数据库被同步的表中做crud操作,看从数据库中的数据有无变化。

mysql在windows下主从同步配置的更多相关文章

  1. mysql数据库备份之主从同步配置

    主从同步意义? 主从同步使得数据可以从一个数据库服务器复制到其他服务器上,在复制数据时,一个服务器充当主服务器(master),其余的服务器充当从服务器(slave).因为复制是异步进行的,所以从服务 ...

  2. centos 6.5 中设置mysql 5.1.73 主从同步配置过程

    本文章给大家介绍centos 6.5设置mysql主从同步过程记录,希望文章对各位会带来帮助.  涉及到的centos系统均为虚拟机,VM下安装的版本. 在centos 6.5上设置了mysql主从功 ...

  3. mysql主从同步配置(windows环境)

    mysql主从同步配置(mysql5.5,windows环境)   A主机(作为主服务器)环境:windows8.mysql5.5 ip:192.168.1.100(自己填) B主机(作为从服务器,由 ...

  4. Linux下MySQL数据库主从同步配置

    说明: 操作系统:CentOS 5.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备 ...

  5. Docker Mysql主从同步配置搭建

    Docker Mysql主从同步配置搭建 建立目录 在虚拟机中建立目录,例如路径/home/mysql/master/data,目录结构如下: Linux中 新建文件夹命令:mkdir 文件夹名 返回 ...

  6. Docker Mysql数据库主从同步配置方法

    一.背景 最近在做内部平台架构上的部署调整,顺便玩了一下数据库的主从同步,特此记录一下操作- 二.具体操作 1.先建立数据存放目录(-/test/mysql_test/) --mysql --mast ...

  7. MySQL主从同步配置(详细图解)

    说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家! 目录 一丶叙述 二丶备份主服务器原有数据到从服务器 三丶配置主服务器master(192.168.4.63) 四丶配置从服务器sl ...

  8. MySql数据主从同步配置

    由于需要配置MySQL的主从同步配置,现将配置过程记录下,已被以后不时之需 MySql数据主从同步   1.1. 同步介绍 Mysql的 主从同步 是一个异步的复制过程,从一个 Master复制到另一 ...

  9. mysql数据库在windows下安装与配置

      mysql是一种开源源代码的关系型数据库系统(RDBMS),使用最常用的数据库管理语言--结构化查询语句(SQL)进行数据库管理. MySQL是开放源代码的,因此任何人都可以在General Pu ...

随机推荐

  1. MySQL数据库表的数据插入、修改、删除、查询操作及实例应用

    一.MySQL数据库表的数据插入.修改.删除和查询 CREATE DATABASE db0504; USE db0504; CREATE TABLE student ( sno ) NOT NULL ...

  2. 在iOS开发中,我们会遇到十六进制和字符串之间相互转换,话不多说,直接上代码:

    //将十六进制的字符串转换成NSString则可使用如下方式: + (NSString *)convertHexStrToString:(NSString *)str { if (!str || [s ...

  3. 【POJ 2096】 Collecting Bugs

    [题目链接] http://poj.org/problem?id=2096 [算法] 概率DP [代码] #include <algorithm> #include <bitset& ...

  4. 【NOIP 2011】 计算系数

    [题目链接] https://www.luogu.org/problemnew/show/P1313 [算法] 二项式定理 [代码] #include<bits/stdc++.h> usi ...

  5. [JXOI 2018] 游戏 解题报告 (组合数+埃氏筛)

    interlinkage: https://www.luogu.org/problemnew/show/P4562 description: solution: 注意到$l=1$的时候,$t(p)$就 ...

  6. C#操作QQ邮箱发送电子邮件原来这么简单。。。。

    在贴代码之前,首先需要给QQ邮箱开服务IMAP/SMTP服务,详细开通方法见 "开通方法"(可能需要发送收费短信,所以只要开通这一个服务就好了). 这边主要就是为了一个服务的授权码 ...

  7. SDAutoLayout的使用

    ## 简介- IOS布局的三个阶段:MagicNumber -> AutoResizingMask -> AutoLayout- 自动布局三大框架:UILayoutConstraint(原 ...

  8. [原创]Java常见笔试题知识点汇总

    前天数梦工厂来学校招聘,笔试题比较有特点,全是Java题,基本就是Java的一些特点.凭记忆按照题目找到一些必备知识点 (1). try {}里有一个return语句,那么紧跟在这个try后的fina ...

  9. 模拟试题A

    模拟试题A 一.单项选择题(2′*12=24′) 1.下面各种坐标变换中,会产生变换前后维度的改变的是( ) A)建模变换 B)观察变换 C)投影变换 D)视口变换 2.下列描述深度缓冲消隐算法的特点 ...

  10. LoadRunner时间戳函数web_save_timestamp_param

    举例:1520822348346(13位,毫秒级)   做时间戳的目的是为了JS缓存和防止CSRF,在LR中可以简单的使用下面这个函数 web_save_timestamp_param 来生成时间戳 ...