ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Mariadb 主从配置教程

2021-10-03 03:31:08  阅读:168  来源: 互联网

标签:bin 教程 slave show master mysql 服务器 Mariadb 主从


一主一从

准备:两台服务器A、B

操作:

1. 安装 mariadb

两台服务器分别安装好Mariadb

#安装mariadb
sudo yum install mariadb-server 
#开启
sudo systemctl start mariadb
#设置开机自动启动
sudo systemctl enable mariadb
#查看状态
sudo systemctl status mariadb
#设置初始密码
sudo mysql_secure_installation

2. 配置主从服务器

分别修改下my.cnf

服务器A:主

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log_bin                   = /var/lib/mysql/bin-log
log_bin_index             = /var/lib/mysql/mysql-bin.index
expire_logs_days          = 7
server_id                 = 160 #主从配置
binlog_format             = ROW

 

服务器B:从

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log_bin                   = /var/lib/mysql/bin-log
log_bin_index             = /var/lib/mysql/mysql-bin.index
expire_logs_days          = 7
binlog_format             = ROW

# 主从配置
server-id=162

修改完成后重启Mariadb服务

systemctl restart mariadb.service

 

在主服务器上建立帐户并授权slave

gant replication slave on *.* to root@10.10.10.100 identified by '123456';
flush privileges;

# ps: 10.10.10.100 为从服务器的ip
# 123456 为从服务器的MySQL密码

 

3. 登录主服务器的mysql,查询master的状态

show master status;

 

 

4. 配置从服务器 Slave

change master to master_host='10.10.0.002',master_user='root',master_password='123456',master_log_file='bin-log.000002',master_log_pos=2759;
# ps:10.10.0.002 为主服务器ip
# bin-log.000002 为上面第三点的 File
# 2759为上面第三点的 Position

 

# 启动从服务器复制功能
start slave;

# 检查从服务器复制功能状态
show slave status\G

 

 

5. 为了保证主从数据一致,设置从服务器为只读

show global variables like 'read%'; // 查看 read_only 状态

set global read_only=1; // 当前环境生效,重启后失效
# 可以到 /etc/my.cnf 添加一行 read_only=1,然后重启即可

 

6. 其他

主从没有同步

#查看Master库状态
show processlist;
show master status;
#再到Slave上查看
show slave status\G  
发现从库没有执行SQL
Slave_IO_Running: Yes Slave_SQL_Running: No

可以忽略错误后,继续同步,这种方法适用于主从库数据相差不大,或者要求数据可以不完全统一的情况,数据要求不严格的情况

stop slave;
#表示跳过一步错误,后面的数字可变
set global sql_slave_skip_counter =1;
start slave;

之后再用mysql> show slave status\G 查看

mysql> show slave status\G
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

现在主从同步状态正常了

如果是需要同步主库之前的数据,需要先在主库备份好,然后将备份文件发送到从库的服务器,在从库执行后,才会重新同步

 

参考链接:

https://blog.csdn.net/qq_32248673/article/details/59055972

https://segmentfault.com/a/1190000038663356

标签:bin,教程,slave,show,master,mysql,服务器,Mariadb,主从
来源: https://www.cnblogs.com/ryanzheng/p/15363238.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有