MySQL主从同步

MySQL主从同步

作用

减少单台服务器的压力,防止单点故障

部署

主库

编辑/etc/mysql/mysql.conf.d/mysqld.cnf
shell 复制代码
log_bin=mysql-bin
server-id=1 #服务器的id,再主从数据库里不能重复
重启MySQL服务器
shell 复制代码
systemctl restart mysql
连接mysql,并创建用于主从复制的用户,赋予该用户权限
复制代码
mysql -u root -pxxx -h host -P port #xxx是mysql中用户root的密码,host是ip,port是端口号
create user 'username'@'host' identified by "password" #username可以替换成任意的用户名;host表示那个主机可以连接这台服务器,%表示任意主机都可以;password表示该用户的密码
grant slave replication on *.* to 'username'@'root'; #授权,其他同上
show master status \G;#查看master状态,主要关注File,Position

从库

编辑/etc/mysql/mysql.conf.d/mysqld.cnf,并重启mysql服务器
复制代码
server-id=2 #服务器的id,再主从数据库里不能重复
systemctl restart mysql
连接mysql,修改master
sql 复制代码
mysql -u root -pxxx -h host -P port #xxx是mysql中用户root的密码,host是ip,port是端口号
# username 是主库中创建的用户名
# password 是主库中创建的用户对应的密码
# PORT 是主库所占用的端口
# HOST 是主库的ip,如果mysql是服务器的话就是机器的公网ip
# FILE 是主库中执行show master status \G;结果当中的File字段的值
# POS 是主库中执行show master status \G;结果当中的Position字段的值
CHANGE MASTER TO MASTER_USER="username",MASTER_PASSWORD="password",MASTER_PORT="PORT",MASTER_HOST="HOST",
MASTER_LOG_FILE="FILE",MASTER_LOG_POS="POS";
MySQL中启动slave
sql 复制代码
start slave;
检查主从连接状态
sql 复制代码
show slave status\G;
相关推荐
元Y亨H11 小时前
技术笔记:MySQL 字符集排序规则与大小写敏感性问题解决方案
mysql
这个DBA有点耶1 天前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵2 天前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
SamDeepThinking2 天前
一条UPDATE语句在MySQL 8.0中到底加了几把锁?
后端·mysql·程序员
李白客3 天前
KES新版MySQL兼容能力再升级意味着什么?
mysql·国产数据库
Jim6005 天前
【吃透 MySQL InnoDB连载】第 1 章・解密线上数据库高频故障
mysql
GreatSQL6 天前
gt-checksum v4.0.0 新功能解读系列文章(4):SSL 加密连接——数据校验传输安全再升级
mysql
云技纵横9 天前
唯一索引 INSERT 死锁实战:5 秒复现交叉插入的 S 锁循环等待
sql·mysql
沉默王二9 天前
面试官:RAG 不用向量数据库,用 MySQL 硬扛?我:100 万向量不是很轻松?
mysql·面试·ai编程