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;
相关推荐
程序员夏洛1 小时前
MySQL 中 count(*)、count(1) 和 count(字段名) 有什么区别?
数据库·mysql
l1258652 小时前
# RAG向量数据库优化实战:HNSW索引调参与生产级性能设计
数据库·python·mysql·langchain
梦Arrebol2 小时前
Mysql内容及相关实验
数据库·mysql
OceanWaves19933 小时前
mysql 8.0.32 磁盘爆满,清理从库日志
数据库·mysql
JavaPub-rodert5 小时前
Go 后台如何同时兼容 MySQL、PostgreSQL、SQLite 和 SQL Server?从 ShiyuAdmin 看 GORM 多数据库适配
数据库·mysql·postgresql·golang·javapub·王仕宇
Code额6 小时前
基于 SQLAlchemy 2.x,面向 MySQL 数据库的从入门到精通实战教程(2)
数据库·sql·mysql·adb·ai
爱吃火鸡面呀7 小时前
MySQL 查询与函数详解:从基础条件筛选到高级字符处理
数据库·mysql
知行产研7 小时前
中国矿山无人驾驶出海的三重门
数据库·mysql·php
爱和冰阔落8 小时前
【MySQL 慢查询排查实战】列表接口逐渐变慢时,怎样从请求链路定位原因
android·数据库·mysql
Dxy12393102168 小时前
MySQL有哪些锁?InnoDB锁体系完整梳理博客
数据库·mysql