centos系统mysql主从复制(一主一从)

文章目录

mysql80主从复制(一主一从)

一、环境

准备两台服务器,都进行以下操作

bash 复制代码
#安装80镜像源
 yum install https://dev.mysql.com/get/mysql80-community-release-el9-5.noarch.rpm

#安装mysql80
 yum install mysql-community-server -y
#开启数据库并修改密码,略

#准备域名,方便操作
vim /etc/hosts
#在最后插入以下数据
	192.168.116.151 master1
	192.168.116.152 slave1
bash 复制代码
#检查网络连通性
ping master1
ping salve1


二、服务器master1操作

1.开启二进制日志
bash 复制代码
vim /etc/my.cnf
	log-bin=/var/lib/mysql/binlog
	server-id=1				\\注意从服务器id不能一样,可随意更改
	gtid_mode=ON 
	enforce_gtid_consistency=1
2. 创建复制用户
sql 复制代码
#创建用户
create user  'rep'@'192.168.116.%' identified by '密码';

#给上允许复制权限
grant replication slave, replication client on *.* to 'rep'@'192.168.116.%' ;

如果原数据库有数据,请查看下方链接进行备份与恢复
mysql使用mysqldump备份与恢复

到时只需要将备份好的数据发送给从服务器进行恢复就好了

3. 服务器 slave1操作

如果主数据库(master)原先备份的有数据请先在从服务器(slave)上恢复之后再进行从下面操作,以防数据不完全

bash 复制代码
 change master to
   	master_host='master1',				#IP地址,因为设置了域名,所以使用域名
   	master_user='rep',					#主数据库创建的允许复制的用户
   	master_password='密码',				#密码
    master_auto_position=1;				#自动定位日志文件位置
sql 复制代码
#开启复制
start slave;
查看连接状态
show slave status;

状态为yes视为成功,如果不是在从数据库上使用rep用户连接主数据库,是否可以连接上

若是可以连上,再次检查配置change是否出错,如果出错

sql 复制代码
#停止
stop slave;
#重新设置
reset master;
#再次
change master to 。。。。。

若是没有出错再次查看一下状态,有可能有延迟

4. 在主数据库中添加数据
sql 复制代码
#创建数据库
CREATE DATABASE IF NOT EXISTS test;
#使用
USE test;
#创建表
CREATE TABLE IF NOT EXISTS t1 (  
    id INT AUTO_INCREMENT PRIMARY KEY,  
    name VARCHAR(100) NOT NULL,  
    age INT  
);
#插入数据
INSERT INTO t1 (name, age) VALUES ('Alice', 30);  
INSERT INTO t1 (name, age) VALUES ('Bob', 25);  
INSERT INTO t1 (name, age) VALUES ('Charlie', 35);
#查看数据
SELECT * FROM t1;

在从数据库查看数据

同步已完成
回到顶层

相关推荐
zxrhhm3 小时前
MySQL 8.4 LTS 数据库巡检脚本
数据库·mysql
AI木马人3 小时前
9.【AI任务队列实战】如何在高并发下保证系统不崩?(Redis + Celery完整方案)
数据库·人工智能·redis·神经网络·缓存
vortex53 小时前
Debian 包管理全指南:从底层 dpkg 到高层 apt 及其日志追踪
linux·运维·debian
2401_883600253 小时前
golang如何理解weak pointer弱引用_golang weak pointer弱引用总结
jvm·数据库·python
aLTttY3 小时前
【Redis实战】分布式锁的N种实现方案对比与避坑指南
数据库·redis·分布式
偶尔上线经常挺尸3 小时前
《每日一命令08:scp——安全的远程复制》
linux·安全·scp·文件传输·运维基础·远程复制
2301_773553623 小时前
mysql如何评估SQL语句的索引开销_mysql性能追踪与分析
jvm·数据库·python
计算机安禾4 小时前
【Linux从入门到精通】第17篇:日志系统——系统运行的黑匣子
linux·运维·服务器
l1t4 小时前
DeepSeek辅助解决windows 11 wsl2中Linux版Dbeaver显示中文
linux·运维·windows
pele5 小时前
PHP源码运行受主板供电影响吗_供电相数重要性说明【技巧】
jvm·数据库·python