MySQL数据库主从配置

MySQL主从配置

1. 修改数据库my.cnf文件

修改数据库my.cnf文件,在文件中添加如下内容,其中主数据库的server-id必须要比从库的更小。

bash 复制代码
# 注册集群id
server-id=101
# 开启二进制日志文件
log-bin=mysql-bin
# 设置日志格式
binlog-format=row
# 开启中继日志
relay-log=relay-bin
# 忽略拷贝错误
slave-skip-errors=all

从库server-id设置为102

2. 主库创建拷贝用户

sql 复制代码
CREATE USER 'slave'@'%' IDENTIFIED BY 'slave';
GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%';
SHOW MASTER STATUS;
# mysql-bin.000003
# 597

记住输出的fileposition

3. 从库配置主库信息

sql 复制代码
CHANGE MASTER TO 
MASTER_HOST='10.0.0.11', 
MASTER_PORT=3321,
MASTER_USER='slave', 
MASTER_PASSWORD='slave', 
MASTER_LOG_FILE='mysql-bin.000003', 
MASTER_LOG_POS=597;
START SLAVE;
SHOW SLAVE STATUS \G;

查看Slave_IO_Running和Slave_SQL_Running是否为yes。

4. 测试

在主库中新建test数据库和test表,检查从库是否拷贝。

sql 复制代码
create database test;
use test;
CREATE TABLE `test` (
  `id` int NOT NULL AUTO_INCREMENT,
  `test` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
# 插入数据测试
INSERT INTO `test` (`test`) VALUES ('abc');
INSERT INTO `test` (`test`) VALUES ('123');

从库中查询数据

mysql 复制代码
mysql> select * from test.test;
+----+------+
| id | test |
+----+------+
|  1 | abc  |
|  2 | 123  |
+----+------+
相关推荐
马克Markorg6 小时前
常见的向量数据库和具有向量数据库能力的数据库
数据库
Coder_Boy_8 小时前
技术让开发更轻松的底层矛盾
java·大数据·数据库·人工智能·深度学习
helloworldandy8 小时前
使用Pandas进行数据分析:从数据清洗到可视化
jvm·数据库·python
数据知道10 小时前
PostgreSQL 故障排查:如何找出数据库中最耗时的 SQL 语句
数据库·sql·postgresql
qq_124987075310 小时前
基于SSM的动物保护系统的设计与实现(源码+论文+部署+安装)
java·数据库·spring boot·毕业设计·ssm·计算机毕业设计
枷锁—sha10 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
Coder_Boy_10 小时前
基于SpringAI的在线考试系统-考试系统开发流程案例
java·数据库·人工智能·spring boot·后端
Gain_chance10 小时前
35-学习笔记尚硅谷数仓搭建-DWS层最近n日汇总表及历史至今汇总表建表语句
数据库·数据仓库·hive·笔记·学习
此生只爱蛋11 小时前
【Redis】主从复制
数据库·redis
马猴烧酒.11 小时前
【面试八股|JAVA多线程】JAVA多线程常考面试题详解
java·服务器·数据库