什么是主从复制?

主从复制,是用来建立一个和主数据库完全一样的数据库环境,称为从数据库;主数据库一般是准实时的业务数据库。

主从复制的作用(好处)!

1、做数据的热备,作为后备数据库,主数据库服务器故障后,可切换到从数据库继续工作,避免数据丢失。

2、架构的扩展。业务量越来越大,I/O访问频率过高,单机无法满足,此时做多库的存储,降低磁盘I/O访问的频率,提高单个机器的I/O性能。

3、读写分离,使数据库能支撑更大的并发。在报表中尤其重要。由于部分报表sql语句非常的慢,导致锁表,影响前台服务。如果前台使用master,报表使用slave,那么报表sql将不会造成前台锁,保证了前台速度。

Mysql简介:

数据库的种类很多,Oracle、Sql Server、mySQL、Access等他们个自有自己的特点和应用范围,因为一直做sqlserver之前用的比较多的是SqlServer.由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。MySQL是一个多用户、多线程的关系型数据库管理系统。 工作模式是基于客户机/服务器结构。目前它可以支持几乎所有的操作系统,同时也可以和php完美结合。

简单的来说 ,MySql是一个开放的、快速的、多线程的、多用户的SQL数据库服务器。

下面介绍怎么使用Mysql实现主从复制.

1.首先用Vmware创建两个centos7的服务器系统(多个也可以,这里只创建两个,并关闭防火墙).两个服务器的IP分别是 主:192.168.2.128,从:192.168.2.130.

2.在两个服务器中分别安装mysql数据库,并开放给本机(windows)登录(centos7安装mysql数据库本文并不过多赘述).

3.本机用workbench登录主服务器数据库与从服务器数据库,并在其中创建两个相同结构的数据库与数据表.

4.在主服务器中设置mysql配置:

1):使用命令 vi /etc/my.cnf添加配置,添加完成后保存.

5.在主服务器上登录mysql:使用命令 mysql -u root -p.

6.创建一个账号(用来让从服务器登录连接主服务器并复制主服务器的数据日志以达到主从复制的目的)

  1. mysql> create user 'datasync'@'192.168.2.%' identified by 'DataSync.123456';
  2. mysql> grant replication slave on *.* to 'datasync'@'192.168.2.%';

7.重启mysql服务:使用命令 systemctl restart mysqld

8.登录mysql数据库查看master状态 先使用命令mysql -u root -p登录,然后使用命令 show master status;查看状态(记住下图中的状态配置,在从服务器设置中将会用到);

至此,主服务器的配置工作已全部完成,接下来是从服务器配置过程.

9.登录从服务器(192.168.2.130),登录mysql,mysql -u root -p.并修改配置文件 vi /etc/my.cnf

10.重启mysql服务 systemctl restart mysqld

11.在mysql中配置用户同步 change master to master_host='192.168.2.128',master_port=3306,master_user='datasync',master_password='DataSync.123456',master_log_file='mysql-bin.000004',master_log_pos=447;

12.启动slave: 使用命令 start slave;

13.查看slave状态:show slave status\G(如果Slave_IO_Running和Slave_SQL_Running的结果都为Yes的话,表明从服务器配置成功);

14.配置完成,这时候我们往主服务器插入几条数据:

15.打开从服务器数据库中的相关表,查看表中有无更新数据(可以看到,我们并没有往从服务器中手动插入数据,但是从服务器中有了三条数据,跟我们在往主服务器中插入的数据一模一样,表明主从复制已经成功):

至此,mysql主从复制配置成功,测试成功.

mysql之使用centos7实现主从复制(读写分离)的实现过程的更多相关文章

  1. mysql主从复制-读写分离

    mysql主从复制+读写分离 环境:mysql主:193.168.1.1mysql从:193.168.1.2amoeba代理:193.168.1.3########################## ...

  2. Mysql多实例安装+主从复制+读写分离 -学习笔记

    Mysql多实例安装+主从复制+读写分离 -学习笔记 .embody{ padding:10px 10px 10px; margin:0 -20px; border-bottom:solid 1px ...

  3. MySQL 主从复制&读写分离 简介

    1. 读写分离&读写分离 简介 主从同步延迟 分配机制 解决单点故障 总结 2. 主从复制&读写分离 搭建 搭建主从复制(双主) 搭建读写分离 1. 读写分离&读写分离 简介 ...

  4. MySQL/MariaDB数据库的PROXY实现读写分离

    MySQL/MariaDB数据库的PROXY实现读写分离 作者:尹正杰  版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.ProxySQL概述 1>.各家互联网公司读写分离的解决方案 m ...

  5. MySQL常用工具、日志及读写分离

    MySQL常用工具.日志及读写分离 1.MySQL中常用工具 1.1 mysql 1.1.1连接选项 1.1.2 执行选项 1.2 mysqladmin 1.3 mysqlbinlog 1.4 mys ...

  6. MySQL 之 MHA + ProxySQL + keepalived 实现读写分离,高可用(二)

    ProxySQL安装 yum/rpm安装 在github或官网上可以下载rpm包,wiki的Getting start章节有详细介绍. cat <<EOF | tee /etc/yum.r ...

  7. MySQL架构之 主从+ProxySQL实现读写分离

    准备服务器: docker run -d --privileged -v `pwd`/mysql_data:/data -p 3001:3306 --name mysql5-master --host ...

  8. atlas+mysql主主集群实现读写分离

     atlas+mysql主主集群实现读写分离 前言: 目前线上系统数据库采用的是主主架构.其中一台主仅在故障时切换使用,(仅单台服务器对外提供服务,当一台出现问题,切换至另一台).该结构很难支撑较大并 ...

  9. redis 主从复制+读写分离+哨兵

    1.redis读写分离应用场景 当数据量变得庞大的时候,读写分离还是很有必要的.同时避免一个redis服务宕机,导致应用宕机的情况,我们启用sentinel(哨兵)服务,实现主从切换的功能.redis ...

随机推荐

  1. Java的线程同步

    synchronized获取的锁是对象,而不是函数或语句块. 项目结构 资源类 import java.util.concurrent.TimeUnit; public class myResourc ...

  2. DOS中命令的格式

    ---------------siwuxie095 一.DOS中,命令使用格式的一般形式 用中文表达的形式为: [路径]  关键字  [盘符]  [路径]  文件名  [扩展名]  (参数)  [参数 ...

  3. 使用一般处理程序(IHttpHandler)制作图片水印

    做网站的时候经常需要将图片加上网站名称的水印.这样做可以使别人转载图片的时候出现图片出处 ,利于网站宣传.但是如果利用ps来一个一个加水印工作量非常浩大,而且修改了之后就没法还原.这 篇教程教大家利用 ...

  4. 用HttpClient发送HTTPS请求报SSLException: Certificate for <域名> doesn't match any of the subject alternative names问题的解决

    最近用server酱-PushBear做消息自动推送,用apache HttpClient做https的get请求,但是代码上到服务器端就报javax.net.ssl.SSLException: Ce ...

  5. [leetcode]215. Kth Largest Element in an Array 数组中第k大的元素

    Find the kth largest element in an unsorted array. Note that it is the kth largest element in the so ...

  6. Vmware迁移以后eth0消失,无法上网

    一个再普通不过的大神帮助小菜做虚拟机镜像的事情: 小张:帮我做个Vmware下的Ubuntu镜像吧,大神. 小黄:好啊,等我一下,下午发给你. 经过一番操作,小黄顺利的做出了一个虚拟机操作系统 小黄: ...

  7. jq给动态生成的标签绑定事件的几种方法

    经常遇到给动态生成的标签绑定事件不好用,自己简单测试总结了下,结论如下了: body> <!-- 下面是用纯动态方式生成标签 --> <div id="d2" ...

  8. PAT 1035 插入与归并(25)(代码+思路+测试点分析)

    1035 插入与归并(25 分) 根据维基百科的定义: 插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置.如此迭代直到 ...

  9. geoserver 开发2

    先上源码下载 上一章我们介绍了GeoServer源码分析的必要性(这个就见仁见智了)以及诸项准备工作,并且在最后还给出了OWS请求处理流程的伪代码. 这一章我们来看看要注册自己的服务需要做哪些工作.假 ...

  10. Bioconductor简介

    Bioconductor简介 2012-10-09 ~ ADMIN 源:Bioconductor: open software development for computational biolog ...