Mariadb数据库之主从复制同步配置实战

2023-11-19

.

Mariadb数据库之主从复制同步配置实战

一、环境规划

hostname IP地址 系统版本 角色
master 192.168.3.171 centos 7.6 主节点
node01 192.168.3.172 centos 7.6 从节点
node02 192.168.3.173 centos 7.6 从节点

二、Mariadb的主从复制介绍

1.主从复制简介

主从同步使得数据可以从一个数据库服务器复制到其他服务器上,在复制数据时,一个服务器充当主服务器(master),其余的服务器充当从服务器(slave)。

2.半同步复制介绍

半同步复制是解决主库数据挂掉,从库数据不一致的问题。 解决方法:半同步复制,半同步复制场景中,master会监视所有的slave,确保其中至少一台数据完全同步成功,master才会返回客户端信息,此数据写成功。

3.主从复制原理图

image.png

三、安装Mariadb

1.配置yum仓库

3个节点都安装Mariadb数据库


[root@master yum.repos.d]# cat mariadb.repo 
# MariaDB 10.6 CentOS repository list - created 2021-12-27 11:21 UTC
# https://mariadb.org/download/
[mariadb]
name = MariaDB
baseurl = https://mirrors.ustc.edu.cn/mariadb/yum/10.6/centos7-amd64
gpgkey=https://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=0


 sed -i 's#//mirrors.xtom.com.hk#//mirrors.ustc.edu.cn#g' /etc/yum.repos.d/mariadb.repo

2.检查yum仓库

[root@master yum.repos.d]# yum repolist all
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
repo id                                                              repo name                                                             status
mariadb                                                              MariaDB                                                               enabled: 96
repolist: 96

3.安装mariadb

yum -y install mariadb-server

4.启动mariadb服务

[root@master yum.repos.d]# systemctl start mariadb
[root@master yum.repos.d]# systemctl enable  mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
[root@master yum.repos.d]# 

5.从节点安装mariadb

如上步骤安装即可。

四、mariadb主库配置

1.mariadb的初始化

[root@master ~]# mariadb-secure-installation 

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
haven't set the root password yet, you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.

You already have your root account protected, so you can safely answer 'n'.

Switch to unix_socket authentication [Y/n] n
 ... skipping.

You already have your root account protected, so you can safely answer 'n'.

Change the root password? [Y/n] n
 ... skipping.

By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] y
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] n
 ... skipping.

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] y
 ... Success!

Cleaning up...

All done!  If you'</
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Mariadb数据库之主从复制同步配置实战 的相关文章

  • 如何将目录及其子目录中的所有 PDF 文件复制到一个位置?

    如何全部复制PDF文件从目录及其子目录到单个目录 实际上还有更多的文件 并且深度有些任意 假设四个目录的最大深度是公平的 我想这些文件需要重命名 如果a pdf例如 位于多个目录中 因为我会adding https ebooks stack
  • 没有提示指令的直连接中表的顺序是否会影响性能?

    所有基于 SQL 的 RDBMS 10 年前的版本 直接连接查询 没有提示指令 中的表顺序是否会对最佳性能和内存管理产生影响 听说最后一个join应该是最大的表 您的数据库的查询优化器如何处理这种情况 回答你的问题 是的 表的顺序在连接中有
  • MySql 视图脚本中的注释

    可以这样做吗 我尝试过多个 gui mysql workbench navicat toad for mysql 但没有一个保存这样的注释 something important select something else importan
  • Linux:如何从特定端口发送TCP数据包?

    如何打开原始套接字以从特定 TCP 端口发送 我希望所有连接始终来自临时端口以下的一系列端口 如果您正在使用raw套接字 然后只需在数据包标头中填写正确的 TCP 源端口即可 相反 如果您使用 TCP 套接字接口 socket connec
  • 使用 sh 运行 bash 脚本

    我有 bash 脚本 它需要 bash 另一个人尝试运行它 sh script name sh 它失败了 因为 sh 是他的发行版中 dash 的符号链接 ls la bin sh lrwxrwxrwx 1 root root 4 Aug
  • 使用用户定义函数 MySql 时出错

    您好 请帮我解决这个问题 提前致谢 我在数据库中定义了这些函数 CREATE FUNCTION levenshtein s1 VARCHAR 255 s2 VARCHAR 255 RETURNS INT DETERMINISTIC BEGI
  • 如何为 MySQL 中的字段或列添加别名?

    我正在尝试做这样的事情 但我收到未知的列错误 SELECT SUM field1 field2 AS col1 col1 field3 AS col3 from core 基本上 我只想使用别名 这样我就不需要执行之前执行的操作 这在mys
  • 防止 Propel 插入空字符串

    当未设置列时 如何防止 Propel ORM 插入空字符串 CREATE TABLE user uid INTEGER PRIMARY KEY AUTO INCREMENT email VARCHAR 255 NOT NULL UNIQUE
  • SSE:跨页边界的未对齐加载和存储

    我在页面边界旁边执行未对齐加载或存储之前读过某处 例如使用 mm loadu si128 mm storeu si128内在函数 代码应首先检查整个向量 在本例中为 16 个字节 是否属于同一页 如果不属于同一页 则切换到非向量指令 我知道
  • MySQL:@@ 是什么意思?

    我正在阅读本页上的 MySQL 文档 http dev mysql com doc refman 5 1 en set statement html http dev mysql com doc refman 5 1 en set stat
  • 拥有更多列或更多行会更高效吗?

    我目前正在重新设计一个可能包含大量数据的数据库 我可以选择在数据库中包含许多不同的列或使用大量行 如果我在下面做一些大纲 可能会更容易 item id user id title description content category t
  • 来自数据库的 jfreechart 散点图

    如何使用java中的jfreechart绘制mysql数据库表中数据的散点图 我使用过 Swing 库 任何链接都会有帮助 我搜索了谷歌但找不到理解的解决方案 如果您有代码 请提供给我 实际上我确实做了条形图并使用 jfreechart 绘
  • 条件触发器的Django迁移sql

    我想创建一个触发器 仅在满足条件时插入表 我尝试过使用 IF BEGIN END 和 WHERE 的各种组合 但 Django 每次都会返回 SQL 语法错误 这里 type user id指的是触发该事件的人 user id指的是接收到通
  • MySQL如何获取unix时间戳的时间差

    我有一个保存值1506947452的变量 需要使用公式从该日期提取分钟 started data now date 但started date采用unix时间戳格式10位int数字 我以ajax形式收到并需要放入mysql查询i试试这个 S
  • 重写 URL,将 ID 替换为查询字符串中的标题

    我对 mod rewrite 很陌生 但我做了一些搜索 但找不到这个问题的答案 我有一个网站 它只有一个 PHP 页面 根据查询字符串中传递给它的 ID 提供数十页内容 我想重写 URL 以便此 ID消失并替换为从数据库中提取的页面标题 例
  • 在 MySQL 数据库中保持 TEXT 字段唯一的最佳方法

    我想让 TEXT 字段的值在我的 MySQL 表中唯一 经过小型研究 我发现由于性能问题 每个人都不鼓励在 TEXT 字段上使用 UNIQUE INDEX 我现在想用的是 1 创建另一个字段来包含 TEXT 值的哈希值 md5 text v
  • ftrace:仅打印trace_printk()的输出

    是否可以只转储trace printk 输出于trace文件 我的意思是过滤掉函数跟踪器 或任何其他跟踪器 中的所有函数 一般来说 您可以在选项目录中关闭选项 sys kernel debug tracing options Use ls显
  • 在脚本内使用不带密码的 sudo

    由于某种原因 我需要作为用户在没有 sudo 的情况下运行脚本 script sh 该脚本需要 root 权限才能工作 我认为将 sudo 放入 script sh 中是唯一的解决方案 让我们举个例子 script sh bin sh su
  • 使用函数的 SQL 查询 - 如何获取列表的最大计数

    如何查询 MAXIMUM COUNT 交易次数 我的代码如下 SELECT customer id COUNT customer id FROM rental GROUP BY customer id HAVING MAX COUNT cu
  • 如何更改 Apache 服务器的根目录? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何更改 Apache 服务器的文档根目录 我基本上想要localhost从 来 users spencer projects目录而不是

随机推荐

  • Nginx-内存池

    系列文章目录 Nginx资源目录简介 第一章 Nginx学习入门之内存池分析 文章目录 系列文章目录 Ngxin内存池简介 一 nginx内存池结构体 二 使用步骤 1 Ngix 内存池原理 内存作用范围 总结 Ngxin内存池简介 Ngi
  • maven 教程

    Maven项目管理 Maven是什么 Maven是Apache下的项目管理工具 它由纯Java语言开发 可以帮助我们更方便的管理和构建Java项目 为什么要使用Maven jar包管理 从Maven中央仓库获取标准的规范的jar包以及相关依
  • 故障:fork failed:Resource Temporarily Unavailable解决方案

    故障 fork failed Resource Temporarily Unavailable解决方案 在一次crontab bkapp txt导入N多定时任务时候 该用户无法执行任何命令 再ssh连报fork failed Resourc
  • oVirt快速安装指南

    介绍 此文档是针对第一次安装使用oVirt的用户 带领你们逐步完成oVirt的安装 基本环境设置和安装虚拟机 css 系统需求 下面介绍的系统要求只适合典型的中小规模环境的安装 若是对于安装 系统规划和负载均衡有特殊要求的用户 也可使用下面
  • 如何看待中小企业实现数字化转型难的问题?_光点科技

    中小企业在今天的商业环境中扮演着至关重要的角色 它们为就业创造了大量机会 促进了创新 支持了经济增长 然而 中小企业在数字化转型方面面临着许多挑战 这些挑战使得实现数字化转型变得困难 资源限制 中小企业通常拥有有限的资金和人力资源 这使得数
  • Onvif协议学习:12、修改分辨率

    Onvif协议学习 12 修改分辨率 文章目录 Onvif协议学习 12 修改分辨率 1 原理简介 2 函数接口 3 编码流程 4 示例代码 原文链接 https blog csdn net benkaoya article details
  • fc2 php,fc2fans_club.py

    import re from lxml import etree need install import json import ADC function def getTitle htmlcode 获取厂商 print htmlcode
  • 简单看看TypeScript、C# 和 Delphi 这三种编程语言

    TypeScript C 和 Delphi 是三种不同的编程语言 它们都有自己的特点和适用领域 在本篇博客中 我们将对这三种语言进行比较和介绍 分析它们的共同点和区别 TypeScript 是由微软公司的 Anders Hejlsberg
  • xctf-supersqli

    xctf supersqli 堆叠注入 一 堆叠注入 本次采用的靶场xctf的supersqli 一 堆叠注入 进入靶场 发现一个提示框 先随便点一下提交 发现输出了些东西 输入1 判断存在注入点 分别输如1 1 1 2 判断为单引号注入
  • MatConvNet 框架的mnist实例

    mnist 手写是被 cnn mnist m 主函数代码 function net info cnn mnist varargin 主函数 cnn mnist 功能 1 初始化CNN 2 设置各项参数 3 读取和保存数据集 4 初始化tra
  • (图像变换)Python-opencv,(批处理笛卡尔坐标系,也就是平时咱们看到的正常图片)二维彩色图像转化为极坐标系下的图像

    这个其实代码量不大 但对于我这个啥也编不出来的废柴来说我觉得真的好不容易 历经两天的痛苦折磨 终于完成了 下面进入正题 昨天我找了一天代码 然后挑挑拣拣也就找到一篇还是c 的图像极坐标化处理 代码如下 include
  • linux查看显卡型号p4卡或者t4卡_NVIDIA Tesla GPU系列P4、T4、P40以及V100参数性能对比...

    NVIDIA Tesla系列GPU适用于高性能计算 HPC 深度学习等超大规模数据计算 Tesla系列GPU能够处理解析PB级的数据 速度比使用传统CPU快几个数量级 NVIDIA Tesla GPU系列P4 T4 P40以及V100是Te
  • substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。

    tableData sbsj result sbsj substr 0 result sbsj indexOf
  • 使用JDBC操作数据库

    导包 数据库驱动包 msql connector java 1 掌握JDBC连接数据库 1 1 JDBC 流程图 mermaid svg oRZnGw9oql7DhsSu label font family trebuchet ms ver
  • 数据结构与集合之(1)ArrayList 与 Arrays

    数据结构是指逻辑意义上的数据组织方式及其处理方式 从 直接前驱 和 直接后继 个数的维度来看 大体可以将数据结构分为以下四类 1 线性结构 0 至 1 个直接前驱 和 直接后继 线性结构包括 顺序表 链表 栈 队列等 2 树结构 0 至 1
  • 【python数据分析(22)】Matplotlib库绘图的图表样式参数(linestyle、marker、color、style)

    1 linestyle线条参数 默认是导入了相关的库 这里的代码就不再显示了 solid line style 实线样式 dashed line style 虚线样式 dash dot line style 虚点线样式 dotted lin
  • TP6框架--CRMEB学习笔记:项目初始化+环境配置

    这里给大家分享我在网上总结出来的一些知识 希望对大家有所帮助 最近在研究一个基于TP6的框架CRMEB 这里分享下我的开发心得 首先要获取原始项目文件 这里是git地址 https gitee com ZhongBangKeJi CRMEB
  • websocket协议

    WebSocket是一种在Web应用程序中实现实时双向通信的协议 一种在单个TCP连接上进行全双工通信的协议 它使得客户端和服务器之间的数据交换变得更加简单 允许服务端主动向客户端推送数据 WebSocket 与 HTTP 2 一样 其实都
  • C++-必知必会_类模板成员特化(条款48)

    类模板成员特化 再提醒一下 虽然模板的特化和类的派生之间没有任何关 系 但在特化模板的时候 不妨借鉴一下派生的精神 也就意味 着一个完全特化或局部特化通常必须重新实现 主模板具备的 所有能力 例1 主模板 template lt typen
  • Mariadb数据库之主从复制同步配置实战

    Mariadb数据库之主从复制同步配置实战 一 环境规划 二 Mariadb的主从复制介绍 1 主从复制简介 2 半同步复制介绍 3 主从复制原理图 三 安装Mariadb 1 配置yum仓库 2 检查yum仓库 3 安装mariadb 4