MySQL数据库的主从同步
什么要进行数据库的主从同步?
防止单点故障造成的数据丢失
主从复制的原理
MySQL从数据库开启I/O线程,向主服务器发送请求数据同步(获取二进制日志)
MySQL数据库开启I/O线程回应从数据库
从数据库得到主的二进制日志,写入中继日志
从服务器开启SQL线程将日志内容执行,实现数据同步
环境准备
CentOS 7.4 操作系统
MySQL5.7 数据库
在VMware虚拟机中部署了两台操作系统
打开MySQL官网:https://www.mysql.com/

点击DOWNLOADS,进入以下页面

点击MySQL communityDownloads>>,进入下载页面

随后点击MySQL community Server,进入下载页面

默认情况下,会根据系统选择数据库,正如现在所看到的,数据库的最新版本是8.0.18,点击上面的小按钮
会转到其他版本

在这里我选择的是MySQL5.7版本


相关的下载文档在:https://dev.mysql.com/doc/refman/8.0/en/linux-installation-yum-repo.html

下载后,MySQL安装的是默认安装的是8.0.18的版本所以,我们要更改一下yum源:mysql-community.repo

我们把MySQL5.7版本的enable=0改为enable=1,把MySQL8.0版本的enable=1改为enable=0;然后:wq保存
然后运行 yum install -y mysql-community-server 就可以通过yum源安装了。
安装后,运行 yum list installed |grep mysql 查看是否安装完成
systemctl start mysql 运行mysql ,通过systemctl status mysql 查看mysql是否启动
通过更改mysql的配置文件 (/etc/my.cnf)更改root密码
在[mysql]下添加skip-grant-tables,这样重启MySQL之后,就可以以root用户无密码进入MySQL了
进入MySQL后,通过update修改mysql库下的user表中的authentication_string值
具体如下。

然后,root用户就可以以新设置的密码登录MySQL了(mysql须重启,并且把my.cnf配置文件恢复)
这就是第一步安装MySQL的全部过程
之后,我们要进行主从复制的配置
配置前,我们应该保证两台服务器的时间设置一致
通过ntp时间同步服务器设置
ntpdate 主服务器IP
主服务器配置
[mysqld]
log-bin=mysql-bin
log-slave-updates=true
server-id =
给从服务器授权


从服务器上配置
relay-log=relay-log-bin
relay-log-index=slave-relay-bin.index
server-id=
change master to master_host='192.168.94.145',master_user='myslave',master_password='root',master_log_file='mysql-bin.000001',master_log_pos=1026;


这样主从同步就完成了
安装MySQL的shell简单脚本
#! /bin/bash
#action yum install mysql
read -p 'please the mysqlcase directory' dictory
installed=' https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm'
wget $installed -O $dictory
rpm -Uvh $dicrory/ mysql80-community-release-el7-.noarch.rpm
sed -i '28s/enabled=1/enabled=0/' /etc/yum.repos.d/mysql-community.repo
sed -i '21s/enabled=0/enabled=1/' /etc/yum.repos.d/mysql-community.repo
yum install -y mysql-community-server
sed -i '5a skip-grant-tables' /etc/my.cnf
systemctl start mysqld
mysql -u root -
MySQL数据库的主从同步的更多相关文章
- mysql数据库的主从同步,实现读写分离 g
https://blog.csdn.net/qq_15092079/article/details/81672920 前言 1 分别在两台centos 7系统上安装mysql 5.7 2 master ...
- MySQL数据库的主从同步复制配置
一.主从同步机制原理 MYSQL主从同步是在MySQL主从复制(Master-Slave Replication)基础上实现的,通过设置在Master MySQL上的binlog(使其处于打开状态), ...
- mysql数据库的主从同步,实现读写分离
大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够.到了数据业务层.数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器来处理如此多的数据库连接操作,数据库必然会崩溃,特别 ...
- MySQL数据库的主从同步实现及应用
>>主从同步机制及应用 读写分离(Read/Write Splitting)让主数据库处理事务性增.改.删操作(INSERT.UPDATE.DELETE),从数据库处理SELECT查询操作 ...
- MySQL Replication 详解MySQL数据库设置主从同步的方法
MySQL同步的流程大致如下: 1.主服务器(master)将变更事件(更新.删除.表结构改变等等)写入二进制日志(master log). 2.从服务器(slave)的IO线程从主服务器(binl ...
- Zabbix检测Mysql数据库的主从同步
在高并发网站架构中,MySQL数据库主从同步是不可或缺的,不过经常会发生由于网络原因或者操作错误,MySQL主从经常会出现不同步的情况,那么如何监控MySQL主从同步,也变成检测网站正常运行的重要环节 ...
- mysql数据库配置主从同步
MySQL主从同步的作用 .可以作为一种备份机制,相当于热备份 .可以用来做读写分离,均衡数据库负载 MySQL主从同步的步骤 一.准备操作 .主从数据库版本一致,建议版本5.5以上 .主从数据库数据 ...
- MySQL数据库设置主从同步
MySQL主从同步的机制: MySQL同步的流程大致如下: 1.主服务器(master)将变更事件(更新.删除.表结构改变等等)写入二进制日志(master log). 2.从服务器(slave)的I ...
- mysql 数据库的主从同步
1.复制准备 操作系统 centOS 主库(mysql master): ip为123.56.94.1 port为3306 mysql 版本 5.7.16 从库(mysql slave): ...
随机推荐
- java学习6-java基础类库
1.与用户互动 2.系统相关 3.常用类 4.日期.时间类
- python编程系列---白痴女朋友(我没有女朋友!)看了都能懂的TCP/IP协议介绍
前言 早期的计算机网络,都是由各厂商自己规定一套协议,IBM.Apple和Microsoft都有各自的网络协议,互不兼容:为了把全世界的所有不同类型的计算机都连接起来,就必须规定一套全球通用的协议,为 ...
- 浅谈原理--hashCode方法
我们时常会判断一个元素是否相等重复,可以用equals方法. 每增加一个元素,我们就可以通过equals方法判断集合中的每一个元素是否重复,但是如果集合中有10000个元素了,我们每添加一个元素的时候 ...
- Leetcode(10)正则表达式匹配
Leetcode(10)正则表达式匹配 [题目表述]: 给定一个字符串 (s) 和一个字符模式 (p).实现支持 '.' 和 '*' 的正则表达式匹配. '.' 匹配任意单个字符. '*' 匹配零个或 ...
- mySQL的安装过程---二进制和源码安装
安装 mysql 源码包安装 优化基础源 [root@db03 ~]# vim /etc/yum.repos.d/CentOS-Base.repo 安装依赖包 [root@db03 ~]# yum i ...
- Java基础(十五)异常(Exception)
1.处理错误的要求 如果由于出现错误而使得某些操作没有完成,程序应该: 返回到一种安全状态,并能够让用户执行一些其他的命令. 允许用户保存所有操作的结果,并以妥善的方式终止程序. 2.程序中可能出现的 ...
- 腾讯云上面部署PHP运行环境
现在云服务器已经很普及了,其价格.安全优势等成为不少开发者的首选.本人由于兴趣爱好,从朋友那边借了一个过来玩了两天,下面就分享整个部署流程吧. 1. 先到腾讯云官网购买服务器,这边就不演示.很简单,跟 ...
- Vue中错误图片的处理
在一个Vue的PC项目中,要求给错误图片不要让它显示丑陋的图片,就要给图片写一个失败后的默认图片, 在这里写了两种方法, 第一种方法,也就是百度到的最多的代码,就是给一张图片一个默认值. 第二种问题, ...
- Vim任意代码执行漏洞(CVE-2019-12735)
Vim通过Modelines执行任意代码 漏洞概要: 在8.1.1365之前的Vim和在0.3.6之前的Neovim很容易通过打开特制的文本文件而通过模型执行任意代码. 复现条件: 确保未禁用mode ...
- 原生JS实现队结构及利用队列模拟‘击鼓传花’游戏
1. 前言 队列,是一种遵从先进先出(FIFO,First-In-First-Out)原则的有序集合.队列在尾部添加新元素,并从顶部移除元素,最新添加的元素必须排在队列的末尾. 2.功能说明 enqu ...