MySQL的主从复制搭建

该文详细介绍了如何搭建MySQL主从复制的集群环境,包括准备环境、设置静态IP、配置yum源和时间同步。在主服务器上,文章详述了安装、初始化数据库以及安全配置的步骤,而在从服务器上则简化了这个过程。此外,还讨论了基于GTIDs的从服务器在误写数据后如何跳过事务。
摘要由CSDN通过智能技术生成

1、环境准备

第一步:

克隆两台最小化安装的服务器Master\Slave

第二步:修改两台主机名称(按照需求)

第三步:配置静态ip,关闭防火墙、selinux、setenforce 0和NetworkMannager,最后重启网络

第四步:由于两台服务器是集群架构需要绑定主机名称和ip到/etc/hosts

vim /etc/hosts

10.1.1.1  master.company.cn
10.1.1.100  slave.conpany.cn

第五步:配置yum源(推荐腾讯源)

第六步:时间同步

ntpdate cn.ntp.org.cn

MySQL主从复制核心思路:

主服务器master的配置

第一步:用远程管理工具上传mysql安装包到服务器

第二步:在master服务器端安装、初始化以及运行数据库

可以编辑一个简单的shell脚本vim myql.sh

#!/bin/bash           
yum install libaio -y        //安装mysql依赖库
tar -xf mysq1-5.7.31-linux-glibc2.12-x86_64.tar. gz   //解压mysql安装包
mv mysql-5.7.31-linux-glibc2.12-x86_64 /usr/local/mysql  //移动安装包到系统目录
useradd -r -s /sbin/nologin mysql     //创建系统用户mysql
rm -rf /etc/my.cnf       //删除my.cnf配置文件
cd /usr/local/mysql
mkdir mysql-files     //创建mysql-files导入导出文件
chown mysql:mysql mysql-files
chmod 750 mysql-files   //其他用户没有权限
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql &>/ root/password.txt  //初始化数据库并把密码发送到文本
bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data  //开启ssl数据传输加密
cp support-files/mysql.server /etc/init.d/mysqld
service mysqld start
echo 'export PATH=$PATH:/usr/local/mysql/bin' >> /etc/profile  //环境变量
source /etc/profile   //让配置立即生效


#source mysql.sh   //开始运行shell脚本

第三步:安全配置(回车关闭密码检测,回车不更改密码,一路Y)

mysql_secure_installiation

从服务器slave安装MySQL不需要初始化

#!/bin/bash           
yum install libaio -y        //安装mysql依赖库
tar -xf mysq1-5.7.31-linux-glibc2.12-x86_64.tar. gz   //解压mysql安装包
mv mysql-5.7.31-linux-glibc2.12-x86_64 /usr/local/mysql  //移动安装包到系统目录
useradd -r -s /sbin/nologin mysql     //创建系统用户mysql
rm -rf /etc/my.cnf       //删除my.cnf配置文件
cd /usr/local/mysql
mkdir mysql-files     //创建mysql-files导入导出文件
chown mysql:mysql mysql-files
chmod 750 mysql-files   //其他用户没有权限
cp support-files/mysql.server /etc/init.d/mysqld  //把mysql提供的脚本复制到启动脚本的目录
service mysqld start
echo 'export PATH=$PATH:/usr/local/mysql/bin' >> /etc/profile  //环境变量
source /etc/profile   //让配置立即生效


#source mysql.sh   //开始运行shell脚本



从服务器如果之前有二进制文件产生必须删掉,保持主从复制的一致性。


基于 GTIDs(全局事务标识符)的SLAVE服务器不小心写入数据后的跳过事务方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值