首页 > 其他分享 >MariaDB 主从集群部署

MariaDB 主从集群部署

时间:2023-04-13 14:01:43浏览次数:34  
标签:-- data 主从 集群 mysql master MariaDB backup 节点

1、环境

服务器名称 IP地址 备注
db-161-131 10.32.161.131
db-161-132 10.32.161.132

2、MariaDB安装

参考:https://www.cnblogs.com/a120608yby/p/17312862.html

3、修改配置并重启服务

# 主节点主要配置
# vim /etc/my.cnf
...
server-id = 131
log_bin = mysql-bin
...

# 从节点主要配置
# vim /etc/my.cnf
...
server-id = 132
log_bin = mysql-bin
read_only = 1
report-host = node04
...

# 重启MariaDB服务
systemctl restart mariadb

# 在主节点上创建复制账号
> grant replication slave on *.* to repl_user@'%' identified by 'password';
> flush privileges;

4、备份主节点数据并在从节点恢复

# 在主节点上备份数据
mkdir /data/backup -p
mariabackup --backup --target-dir /data/backup/ -u root

# 同步备份数据到从节点
scp -r /data/backup/ 10.32.161.132:/data

# 停止从节点服务并删除数据
systemctl stop mariadb
rm -rf /var/lib/mysql/*

# 在恢复任务之前运行准备任务(从节点)
mariabackup --prepare --target-dir /data/backup/

# 运行恢复(从节点)
mariabackup --copy-back --target-dir /data/backup/

# 修改数据库目录权限
chown -R mysql. /var/lib/mysql
 
# 启动数据库服务
systemctl start mariadb

5、主从复制配置

# 查看binlog及position
# cat /data/backup/xtrabackup_binlog_info
mysql-bin.000001        27392   []
mysql-bin.000002        647     []
mysql-bin.000003        385     0-1-43

# 登录从节点配置复制
> change master to 
master_host='10.32.161.131',
master_user='repl_user',
master_password='password',
master_log_file='mysql-bin.000003',
master_log_pos=385;

# 启动复制
> start slave; 

# 查看复制状态
> show slave status\G

  

标签:--,data,主从,集群,mysql,master,MariaDB,backup,节点
From: https://www.cnblogs.com/a120608yby/p/17314545.html

相关文章

  • mysql主从故障恢复
    之前遇到过一次Slave_SQL_Running:no的情况,解决方法请参考:https://www.cnblogs.com/sxFu/p/16022876.html而这次遇到的故障为:Slave_IO_Running:no一方面原因是因为网络通信的问题也有可能是日志读取错误的问题 再看错误信息可以判断为日志读取错误的问题 解决办法1、......
  • mariabackup 备份 MariaDB 数据库
    1、安装mariabackupdnf-yinstallmariadb-backup2、创建备份目录并执行备份操作#mkdir/data/backup-p#mariabackup--backup--target-dir/data/backup/-uroot[00]2023-04-1311:50:31ConnectingtoMySQLserverhost:localhost,user:root,password:not......
  • Rocky Linux 9 安装 MariaDB 10.5
    1、安装MariaDBdnf-yinstallmariadb-server2、修改配置#vim/etc/my.cnf[client]port=3306socket=/var/lib/mysql/mysql.sockdefault-character-set=utf8mb4[mysqld]port=3306socket=/var/lib/mysql/mysql.sockdatadir=/var/lib/mysqlpid-file......
  • SonarQube(CE)版集群环境下的高可用性实践
    摘要:本文将详细介绍SonarQube的落地场景,集群环境(CE)下的高可用性(HA)最佳实践,包括部署策略、负载均衡、数据同步等方面的内容,以帮助您更好地构建一个健壮、高性能的代码质量分析系统一、为什么是SonarQubeSonarQube是一个广泛使用的开源的代码质量分析工具,它可以帮助开发团队发现和修......
  • 如何解决 K8s 多租户集群的安全隔离难题?
    解决多租户集群的安全隔离问题对于企业上云而言至关重要。本文讨论了Kubernetes多租户集群的概念和常见的应用模式、企业内共享集群的业务场景以及Kubernetes现有的安全管理功能。什么是多租户集群首先,我们讨论一下“租户”是什么。租户的概念不仅是集群用户,还包括构成计算、网......
  • mysql主从1062主键冲突跳过错误
    1062错误——主键冲突,出现这种情况就是从库出现插入操作,主库又插入相同的数据,iothread没问题,sqlthread出错处理此种错误一般有两种思路:1、直接跳过错误执行语句2、找到错误执行语句,修复主库2数据https://www.cndba.cn/leo1990/article/2957https://www.cndba.cn/leo1990/articl......
  • Elasticsearch(ELK)集群环境部署
    目录一、概述二、准备1)机器环境准备2)创建elsearch用户三、elasticsearch部署1)下载并安装2)修改配置文件以支持集群四、启动出现的问题及解决方案1)JDK版本过低2)配置过低3)JVM内存大小指定太大,但本机内存不够用五、安装elasticsearch-head1)下载安装2)修改服务器监听地址六、安装Kiba......
  • 10.【RabbitMQ实战】- RabbitMQ集群
    搭建集群镜像队列默认情况下node1创建的队列不会同步到node2上此时如果已经发送到了一条消息到node1上的队列,该队列并不会备份到node2上此时node1宕机并重启,该消息会丢失,配置对应策略可保证集群上队列备份并且消息不丢失负载均衡生产者给node1发消息,此时node1宕机,但是......
  • Java语言在Spark3.2.4集群中使用Spark MLlib库完成朴素贝叶斯分类器
    一、贝叶斯定理贝叶斯定理是关于随机事件A和B的条件概率,生活中,我们可能很容易知道P(A|B),但是我需要求解P(B|A),学习了贝叶斯定理,就可以解决这类问题,计算公式如下:  P(A)是A的先验概率P(B)是B的先验概率P(A|B)是A的后验概率(已经知道B发生过了)P(B|A)是B的后验概率(已经知道A发生过了)二......
  • 五、基于PVC+StatefulSet实现的MySQL主从架构
    案例(部署mysql)本节使用StatefulSet控制器部署一个MySQL集群,然后进行宕机测试,观察集群是否可以正常恢复使用并且不丢失数据。实现的集群有如下特征:是一个主从复制的MySQL集群1个主节点,多个从节点从节点能够水平扩展所有的写操作,只能在主节点上执行......