mysql replication(主从复制)实验学习笔记

1、理论部分

1.1、mysql replication的概念:

enables data from one mysql database server(the master) to be replicated to one or more mysql database servers(the slaves).

1.2、mysql replication的实现基础:

Binary Log(二进制日志)是实现mysql主从复制的基础

Binary Log的概念:所有的、无论是明确的或隐含的可以引起数据库发生改变的语句都要记录于Binary Log。

主从备份涉及的日志文件有:

Binary log(二进制日志)

Relay log(中继日志)

1.3、mysql replication的分类:

1)主从

2)主主

1.4、mysql replication的商业价值

首先服务器的扩展方式有:

1)scale up:提高原有应用的服务器性能

2)scale out:原有服务器以及应用不变,增加服务器。

服务器遇到性能瓶颈,向上扩展(scale up)的成本过高,假设服务器现有价格是M,性能扩展N倍,成本往往是M*N倍还要多的多的代价才能提高N倍的性能。

1.5、mysql的集群类型

cluster分类:

1)Load Balancing(负载均衡集群),两台服务器均同时提供服务。

2)High Availability(高可用集群),属于冗余机制,只单台提供服务。

3)High Preformance(高性能集群),例子如超级计算机,将非常大的运算需求,自动分割成N片,每一片交给一台计算机处理,处理完成后再返回结果给切割的计算机重新整合。

mysql既有负载均衡能力,又有高可用的特征,从某种意义来讲,负载均衡本身就具有高可用的特征,但高可用并不能提供负载均衡的能力。

1.6、mysql的同步异步问题

同步异步概念:

Async(异步)-通讯无确认信号返回,发送方无需等待接收方回应任务即中止,异步可以提供更好的性能表现。

Sync(同步)-通讯有确认信号返回,发送方需等待接收方回应任务才中止。

mysql主从架构属于异步架构

1.7、实现主从复制的相关进程

mysql主从的进程:

1)Dump线程,负责把数据倾斜给从服务器的线程。

2)I/o thread线程,负责接收主服务器倾泻过来的线程。

3)sql thread线程,从中继日志中读取数据并在本地应用数据的线程。

1.8、mysql replication配置过程介绍

mysql replication配置过程:

1)主服务器上启用二进制日志(默认启用)

2)从服务器启用中继日志(非默认启用)

3)每一个服务器一个独立的身份标识(server id,默认都为1)

4)建立复制具有复制权限的系统账号。

5)主从SSL认证(加密)

主服务建立的账号(从服务器使用):

replication client:从主服务器获取主服务器工作信息(ID号、二级制文件、)

replication salve:从主服务器获取二进信息。

注意:从服务器建议比主服务器版本高。

2、实验部分

待续……

时间: 2024-10-03 14:24:07

mysql replication(主从复制)实验学习笔记的相关文章

MySQL Replication 主从复制全方位解决方案

原文:MySQL Replication 主从复制全方位解决方案 1.1 主从复制基础概念 在了解主从复制之前必须要了解的就是数据库的二进制日志(binlog),主从复制架构大多基于二进制日志进行,二进制日志相关信息参考:http://www.cnblogs.com/clsn/p/8087678.html#_label6 1.1.1 二进制日志管理说明 二进制日志在哪?如何设置位置和命名? 在my.cnf文件中使用 log-bin = 指定:命名规则为 mysql-bin.000000 (后为6

MySQL Replication主从复制—(实例)

主从复制原理 MySQL Replication是一个从Master复制到一台或多台Slave的异步复制过程. Master和Slave之间实现整个复制过程主要由三个线程来完成,其中一个IO线程在Master端,两个线程(SQL线程和IO线程)在Slave端. 通过Master服务器打开Binary Log(二进制日志文件)的功能,Slave端从Master端获取该日志信息,然后将二进制文件解析为SQL语句,并完全顺序地执行SQL语句所记录的各种操作.(Slave获取到的二进制文件同时也会写入到

mysql互为主从复制配置笔记--未读,稍后学习

MySQL-master1:192.168.72.128 MySQL-master2:192.168.72.129 OS版本:CentOS 5.4MySQL版本:5.5.9(主从复制的master和slave服务器中的mysql版本相同或者master版本高于slave版本) 一.MySQL master-master配置 1.修改MySQL配置文件 两台MySQL均如要开启binlog日志功能,开启方法:在MySQL-master1  配置文件/etc/my.cnf  [MySQLd]段中加上

mysql数据库主从复制部署笔记

数据库主从复制原理:数据库的主从复制就是从master数据库复制到slave数据库,在master与slave之间实现整个复制需要三个线程来完成,其中两个在slave端一个在master端.在master端必须打开binlog功能,因为从数据库需要获得主数据的完整的操作日志然后再自身上顺序的执行日志中的各种操作. 主要步骤:1.将slave的io线程连上master,请求获得指定日志文件的指定位置之后的操作日志的内容:2.master获得slave的io线程请求后,将请求中读取到的指定日志的指定

mysql互为主从复制配置笔记

MySQL-master1:192.168.72.128 MySQL-master2:192.168.72.129 OS版本:CentOS 5.4MySQL版本:5.5.9(主从复制的master和slave服务器中的mysql版本相同或者master版本高于slave版本) 一.MySQL master-master配置 1.修改MySQL配置文件 两台MySQL均如要开启binlog日志功能,开启方法:在MySQL-master1  配置文件/etc/my.cnf  [MySQLd]段中加上

第四阶段 (七)MySQL REPLICATION(主从复制、半同步复制、复制过滤)

Linux运维 第四阶段 (七)MySQL REPLICATION(主从复制.半同步复制.复制过滤) 一.MySQL Replication相关概念: 1.复制的作用:辅助实现备份:高可用HA:异地容灾:分摊负载(scaleout):rw-spliting(mysql proxy工作在应用层). 2.master有多个CPU允许事务并行执行,但往二进制日志文件只能一条条写:slave比master要慢:master-slave默认异步方式传送. 3.半同步:仅负责最近一台slave同步成功,其它

MySQL Replication 即主从复制

MySQL Replication主要用于MySQL的时时备份或者读写分离.在配置之前先做一下准备工作,配置两台mysql服务器,或者在一台服务器上配置两个端口也可以.流程示意图: A-->change data-->bin_log-->transfer-->B-->repl_log-->change data 一.搭建好了一个mysql,跑的是3306端口. 1.下载mysql到/usr/local/src/ wget http://mirrors.sohu.com/

mysql实现主从复制

今天说一下MySQL的主从复制如何做到! 准备工作: 1.两个虚拟机:我这里用的是CentOS5.5,IP地址分别是192.168.1.101 和192.168.1.105: 101做主服务器,105做从服务器(都已经安装相同版本的Mysql): 2.本机环境:Apache+PHP+MySQL 好了,现在开始吧,来看看这听起来高大上的主从复制是怎么回事. 原理:mysql要做到主从复制,其实依靠的是二进制日志,即:假设主服务器叫A,从服务器叫B:主从复制就是   B跟着A学,A做什么,B就做什么

用python监控mysql的主从复制

利用python来检查MySQL的主从复制, 有一个注意点是,cur.execute("show slave status;") 不能用cur.execute("show slave status\G;") result = cur.fetchall() 返回的是个二元数组 result[0] 返回时整个show slave status 状态信息. result[0][n] 返回具体的某一项. python代码如下: #!/usr/bin/env python #