Mysql/mariadb 主从数据库简单配置

安装并启动数据库

1
2
3
yum install mariadb-server mariadb -y
systemctl enable mariadb
systemctl start mariadb

master 配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
vi /etc/my.cnf
# 添加配置,注意 id 不能重复
# log-bin=mysql-bin
# server-id=1
# 配置完成后重启数据库
systemctl restart mariadb

# 进入mysql
mysql -uroot
# 添加slave用户
GRANT REPLICATION SLAVE ON *.* to 'slave'@'%' identified by '000000';
# 刷新权限
FLUSH PRIVILEGES;

slave 配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
vi /etc/my.cnf
# 只需要添加server-id
# server-id=2
# 配置完成后重启数据库
systemctl restart mariadb

# 进入mysql
mysql
# 添加主节点配置
# log_file 和 log_pos 的值在主节点上使用 show master status; 查看
change master to master_host='192.168.0.178',master_user='slave',master_password='000000',master_log_file='mysql-bin.000001' ,master_log_pos=463;

# 启动 slave 节点
start slave;

# 查看主从状态
show slave status\G;
# 如下显示则成功
# Slave_IO_Running: Yes
# Slave_SQL_Running: Yes

如果主从节点数据不同步需要手动同步

1
2
3
4
5
# 全局锁库
FLUSH TABLES WITH READ LOCK;

# 解锁
UNLOCK TABLES;
作者

MisakaWater

发布于

2022-01-23

更新于

2022-01-23

许可协议