话不多说,直接干。

准备条件:安装两个mysql数据库,随便哪个作主库,另一个从库。

1.在主库创建 复制用的账号

grant replication slave ,replication client on *.* to repl@'192.168.125.%' identified by 'repl';

上面创建了账户repl,密码repl,赋予了权限replication slave(必要),replication client(非必要),*.* 意思是任意数据库的任意表。其中的192.168.125.% 表示此用户可以从ip开头为192.168.125的机器上访问主库。

2.配置主库 ,linux下配置文件路径 /etc/my.cnf ,windows下路径:MySQL\MySQL Server 5.7\my-default.ini

打开后编辑,添加 或修改下面两行。

log_bin = master-bin
server_id = 128

server_id 的值随便设,每个数据库唯一。login_bin 指定主库生成的二进制文件的名字

重启 主库的服务,然后登录主库执行 show master status;

出现上面的图表示正常开启,主库配置完毕。

3.配置从库,仍然是my.cnf (linux) ,或 my-default.ini(windows)

添加或修改下面2行:

server_id = 127

relay_log = /var/lib/mysql/mysql-relay-bin

server_id 指定mysql数据库唯一标识,relay-log是指定中继日志(下面解释)的位置和名字

4.启动slave

重启 从库,登录后执行

change master to master_host = '主库ip' ,master_user='repl', master_password='repl', master_log_file='master-bin.000001',master_log_pos=0;

然后使用 start slave;  开启复制。可以通过 show slave status\G; 查看复制信息如下图;

这时候可以登录主库,更改主库数据,看看从库是否同步发生变化。

5.主从如何复制

复制有三个步骤:

1. 主库把数据更改记录在二进制文件(上面的master-bin)中

2.从库 把主库的二进制文件复制到自己的中继日志中。

3.从库读取中继日志并执行。

见上图。实际上,从库会启动一个IO线程与主库建立连接,并获取主库的更新事件,转储到中继日志。同时从库启动一个SQL线程,从中继日志读取记录并执行。既是允许获取事件和重放事件 异步进行。

中继日志可能存在多个(00001,00002....),SQL线程执行完中继日志后会尽快将其删除(通过relay_log_purge参数控制)。

linux 下 mysql 主从配置的更多相关文章

  1. windows下mysql和linux下mysql主从配置

    1. linux下mysql安装版本5.6   windows下mysql版本5.7  不要问我为什么版本不一致  就是想这么搞 2. linux为主服务器   windows为从服务器 3.找到li ...

  2. Linux下mysql主从配置

    mysql服务器的主从配置,这样可以实现读写分离,也可以在主库挂掉后从备用库中恢复需要两台机器,安装mysql,两台机器要在相通的局域网内主机A: 192.168.1.100从机B:192.168.1 ...

  3. linux中MySQL主从配置(Django实现主从读写分离)

    一 linux中MySQL主从配置原理(主从分离,主从同步) mysql主从配置的流程大体如图: 1)master会将变动记录到二进制日志里面: 2)master有一个I/O线程将二进制日志发送到sl ...

  4. windows环境下mysql主从配置

    mysql主从配置. 相关理论知识可以百度一下,这里就不多说了,直接说如何配置. 一.环境介绍及说明 主库所在的操作系统:win7 主库的版本:mysql-5.6.24-winx64.zip 主库的i ...

  5. linux系统mysql主从配置

    一.原理 mysql主从配置的流程大体如图: 1)master会将变动记录到二进制日志里面: 2)master有一个I/O线程将二进制日志发送到slave; 3) slave有一个I/O线程把mast ...

  6. Linux下MySQL主从同步配置

    Centos6.5 MySQL主从同步 MySQL版本5.6.25 主服务器:centos6.5 IP:192.168.1.101 从服务器:centos6.5 IP:192.168.1.102 一. ...

  7. linux下 mysql主从备份

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/czh0423/article/details/26720539 一.准备 用两台server做測试: ...

  8. debian下mysql主从配置

    1.确保master/slave只有一份/etc/mysql/my.cnf , 不要在其他地方再有my.cnf (如/etc/my.cnf  /usr/local之类) 2.master配置: 在[m ...

  9. win7下 mysql主从配置实现

    win7下学习 mysql主从复制 一.环境: 主服务器(master):192.168.1.23 mysql版本:5.5 从服务器(slave):192.168.1.24 mysql版本:5.5   ...

随机推荐

  1. 基础系列(4)—— C#装箱和拆箱

    一 装箱和拆箱的概念 装箱是将值类型转换为引用类型 : 拆箱是将引用类型转换为值类型 : 值类型:包括原类型(Sbyte.Byte.Short.Ushort.Int.Uint.Long.Ulong.C ...

  2. HDU 5229 ZCC loves strings 博弈

    题目链接: hdu:http://acm.hdu.edu.cn/showproblem.php?pid=5229 bc:http://bestcoder.hdu.edu.cn/contests/con ...

  3. 0517 SCRUM团队项目4.0

    题目 1.准备看板.形式参考图4.2.任务认领,并把认领人标注在看板上的任务标签上.先由个人主动领任务,PM根据具体情况进行任务的平衡.然后每个人都着手实现自己的任务.3.为了团队合作愉快进展顺利,请 ...

  4. Cobbler环境搭建

    Cobbler服务器系统: CentOS 6.6 64位Cobbler版本: cobbler-2.6.11IP地址:192.168.166.136 1.安装epel库 rpm -ivh http:// ...

  5. Charles安装及使用教程

    一. 简介及安装 一.charles的使用 1.1  charles的说明 Charles其实是一款代理服务器,通过过将自己设置成系统(电脑或者浏览器)的网络访问代理服务器,然后截取请求和请求结果达到 ...

  6. static关键字的新用法

    static关键字的新用法和总结: static这个关键字,也可以像“self”一样,代表“当前类”,用于访问一个类的“静态属性或静态方法”: 但, static,在应用中,更灵活,因此更常见! 因为 ...

  7. 解决sublime install package连不上的问题

    下载文件 百度网盘:https://pan.baidu.com/s/1Z-11d4btZJyx5zA7uzNi8Q 修改配置文件 转载请注明博客出处:http://www.cnblogs.com/cj ...

  8. Django 2.0 学习(18):Django 缓存、信号和extra

    Django 缓存.信号和extra Django 缓存 由于Django是动态网站,所以每次请求均会去数据库进行相应的操作,当程序访问量大时,耗时必然会显著增加.最简单的解决方法是:使用缓存,缓存将 ...

  9. poj2299——Ultra-QuickSort

    Description In this problem, you have to analyze a particular sorting algorithm. The algorithm proce ...

  10. Zabbix3.4.5部署安装(二)

    一.部署环境 一)系统环境: [root@Node3 ~]# cat /etc/redhat-release //查看系统版本 CentOS Linux release (Core) [root@No ...