MySQL5.7主从复制教程
简述:主从复制,是用来建立一个和主数据库完全一样的数据库环境,称为从数据库,主数据库一般是准实时的 业务数据库、事务处理库,从库做查询库。
复制过程简单的说就是 master 将数据库的改变写入二进制日志,slave同步这些二进制日志,并根据这些二进制日志行数据操作
1、什么是主从复制
主从复制,是用来建立一个和主数据库完全一样的数据库环境,称为从数据库,主数据库一般是准实时的业务数据库。在最常用的mysql数据库中,支持单向、异步复制。在复制过程中,一个服务器充当主服务器,而另外一台服务器充当从服务器;此时主服务器会将更新信息写入到一个特定的二进制文件中。
并会维护文件的一个索引用来跟踪日志循环。这个日志可以记录并发送到从服务器的更新中去。当一台从服务器连接到主服务器时,从服务器会通知主服务器从服务器的日志文件中读取最后一次成功更新的位置。然后从服务器会接收从哪个时刻起发生的任何更新,然后锁住并等到主服务器通知新的更新。
2、主从复制的作用
-
是确保数据安全;做数据的热备,作为后备数据库,主数据库服务器故障后,可切换到从数据库继续工作,避免数据的丢失。
-
是提升I/O性能;随着日常生产中业务量越来越大,I/O访问频率越来越高,单机无法满足,此时做多库的存储,有效降低磁盘I/O访问的频率,提高了单个设备的I/O性能。
-
是读写分离,使数据库能支持更大的并发;在报表中尤其重要。由于部分报表sql语句非常的慢,导致锁表,影响前台服务。如果前台使用master,报表使用slave,那么报表sql将不会造成前台锁,保证了前台速度。
3、主从复制的原理三步曲进行:
主数据库有个bin log二进制文件,记录了所有增删改SQL语句。(binlog线程)
从数据库把主数据库的bin log文件的SQL语句复制到自己的中继日志relay log(io线程)
从数据库的relay log重做日志文件,再执行一次这些sql语句。(sql执行线程)
一、环境描述
服务器优化注意事项
Ⅰ、服务器的大磁盘必须挂载到/opt目录下,服务的目录以及数据都保存在/opt/software下
Ⅱ、磁盘挂载必须默认写入/etc/fstab
首先在两个服务器上创建两个数据库
操作系统 | IP地址 | 数据库 | 数据库版本 |
---|---|---|---|
CentOS 7.9 | 1.0.0.11 | MySQL主 | 5.7.38 |
CentOS 7.9 | 1.0.0.12 | MySQL从 | 5.7.38 |
CentOS 7.9 | 1.0.0.13 | MySQL从 | 5.7.38 |
二、Linux基础配置
# 查看服务器版本
cat /etc/redhat-release
# 查看服务器磁盘空间使用情况
df -h
# 新建文件夹package存放压缩包
mkdir /opt/package
# 新建文件夹software存放解压后的软件
mkdir /opt/software
# 新建文件夹存放项目
mkdir /opt/project
# 新建文件夹apr存放文件
mkdir /opt/software/apr
# 新建文件夹apr-util存放文件
mkdir /opt/software/apr-util
关闭防火墙
# 查看防火墙状态
firewall-cmd --state
# 关闭防火墙(重启服务器会开启)
systemctl stop firewalld.service
# 永久关闭防火墙
systemctl disable firewalld.service
关闭SELinux
# 关闭SELinux修改配置文件需要重启机器:
# 修改/etc/selinux/config 文件
vim /etc/selinux/config
将SELINUX=enforcing 改为:SELINUX=disabled
# 重启机器生效
reboot
配置IP、主机名映射
vim /etc/hosts
1.0.0.11 nwtest1
1.0.0.12 nwtest2
1.0.0.13 nwtest3
设置时间同步
# 联网
# 设置东八区时区为当前时区
rm -rf /etc/localtime
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# 手动同步下网络时间
ntpdate -u cn.pool.ntp.org
# 内网状态时间设置
# 查看当前系统时间
date
# 查看硬件时间
hwclock
# 修改当前系统时间
date -s "2023-1-1 8:08:08"
# 修改硬件时间
hwclock --set --date "2023-1-1 8:08:08"
# 同步系统时间和硬件时间
hwclock --hctosys
# 保存时钟
clock -w
# 重启机器生效
reboot
三、安装MySQL5.7.38
Master/Slave部署
标签:opt,教程,slave,MySQL5.7,mysql,主从复制,MySQL,数据库,software From: https://www.cnblogs.com/sexintercourse/p/17189269.html