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  |
+----+------+
相关推荐
都说名字长不会被发现1 天前
事务性发件箱模式设计与实现
数据库·分布式事务·幂等·事务性发件箱·可靠投递
treacle田1 天前
达梦数据库-数据库单机版本升级-记录总结
数据库·达梦数据库·数据库升级
卡西里弗斯奥1 天前
【海量数据库】参数设置与累积
数据库·postgresql·vastbase·海量数据库
momin~1 天前
MySQL-part1【初始数据库-数据库基础知识】超详细
数据库·mysql
码农学院1 天前
一些在平常开发过程中会用到的比较经典的 SQL 语句,常常用于实现一些很特别的功能。
数据库·sql
vortex51 天前
原创 Burp 插件 | Injector - Path Collector:专攻 URL 路径与 XFF 头部 SQL 注入
数据库·sql·网络安全·渗透测试
摇滚侠1 天前
Windows 卸载 Oracle 19c
数据库·windows·oracle
Darkdreams1 天前
MySQL四种备份表的方式
mysql·adb·oracle
渡我白衣1 天前
【MySQL基础】(3):MySQL库与表的操作
android·数据库·人工智能·深度学习·神经网络·mysql·adb
dovens1 天前
MYSQL批量UPDATE的两种方式
数据库·mysql