mariadb实现主从同步

news2024/11/20 7:12:37

准备两台服务器
Mariadb-Master:192.168.44.150
Mariadb-Backup:192.168.44.148

安装mariadb:

https://blog.csdn.net/qq_50247813/article/details/135402502?spm=1001.2014.3001.5502

组从复制原理如下
在这里插入图片描述

  1. 修改主数据库配置如下

    vi /etc/my.cnf.d/server.cnf
    
    [mysqld]
    character-set-server=utf8
    collation-server=utf8_general_ci
    server_id = 150
    log-bin= mysql-bin
    lower_case_table_names=1
    binlog-format=ROW
    log-slave-updates=True
    sync-master-info=1
    slave-parallel-threads=3
    binlog-checksum=CRC32 
    master-verify-checksum=1
    slave-sql-verify-checksum=1
    
  • character-set-server=utf8 设置数据库默认字符集
  • collation-server=utf8_general_ci 设置校验规则
  • server_id = 150 主从id必须唯一,推荐使用ip位
  • log-bin= mysql-bin 二进制日志,后面指定存放位置。如果只是指定名字,默认存放在/var/lib/mysql下
  • lower_case_table_names=1 库表不区分大小写
  • binlog-format=ROW 二进制日志文件格式
  • log-slave-updates=True slave更新是否记入日志
  • sync-master-info=1 值为1确保信息不会丢失
  • slave-parallel-threads=3 同时启动多少个复制线程,最多与要复制的数据库数量相等即可
  • binlog-checksum=CRC32 效验码
  • master-verify-checksum=1 启动主服务器效验
  • slave-sql-verify-checksum=1 启动从服务器效验
  1. 修改从数据库配置

     vi /etc/my.cnf.d/server.cnf
    
    	[mysqld]
    character-set-server=utf8
    collation-server=utf8_general_ci
    server_id=148
    relay_log = relay-bin
    lower_case_table_names=1
    
  • server_id=148 主从id必须唯一
  • relay_log = relay-bin 中继日志, 后面指定存放位置。如果只是指定名字,默认存放在/var/lib/mysql下
  1. 重启主从数据库,配置生效

     systemctl restart mariadb
    
  2. master节点配置

    注:如果使用普通用户需要授权binlog权限

     grant replication slave, replication client on *.* to 'user'@'%' identified by 'passwd';
    

    还有注意将slave加入到master的远程访问列表中

     GRANT ALL PRIVILEGES ON *.* to  `root`@`192.168.44.*` identified by '123456';
     flush privileges;
    

     mariadb -uroot -p123456
    
    MariaDB [(none)]> show master status;
    +------------------+----------+--------------+------------------+
    | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
    +------------------+----------+--------------+------------------+
    | mysql-bin.000002 |     1218 |              |                  |
    +------------------+----------+--------------+------------------+
    1 row in set (0.000 sec)
    
    MariaDB [(none)]> select binlog_gtid_pos('mysql-bin.000002', 1218 );
    +--------------------------------------------+
    | binlog_gtid_pos('mysql-bin.000002', 1218 ) |
    +--------------------------------------------+
    | 0-150-6                                    |
    +--------------------------------------------+
    1 row in set (0.000 sec)
    
  3. 从节点配置

    MariaDB [(none)]> set global gtid_slave_pos='0-150-6';
    	Query OK, 0 rows affected (0.004 sec)
    	
    	MariaDB [(none)]>  change master to master_host='192.168.44.150',master_user='root',master_password='123456',master_use_gtid=slave_pos;
    	Query OK, 0 rows affected (0.008 sec)
    	
    	MariaDB [(none)]> start slave;
    	Query OK, 0 rows affected (0.005 sec)
    	
    	MariaDB [(none)]>
    
  4. 验证salve状态

    		MariaDB [(none)]> show slave status\G
    *************************** 1. row ***************************
                    Slave_IO_State: Waiting for master to send event
                       Master_Host: 192.168.44.150
                       Master_User: root
                       Master_Port: 3306
                     Connect_Retry: 60
                   Master_Log_File: mysql-bin.000002
               Read_Master_Log_Pos: 1722
                    Relay_Log_File: relay-bin.000002
                     Relay_Log_Pos: 1174
             Relay_Master_Log_File: mysql-bin.000002
                  Slave_IO_Running: Yes
                 Slave_SQL_Running: Yes
              Replicate_Rewrite_DB: 
                   Replicate_Do_DB: 
               Replicate_Ignore_DB: 
                Replicate_Do_Table: 
            Replicate_Ignore_Table: 
           Replicate_Wild_Do_Table: 
       Replicate_Wild_Ignore_Table: 
                        Last_Errno: 0
                        Last_Error: 
                      Skip_Counter: 0
               Exec_Master_Log_Pos: 1722
                   Relay_Log_Space: 1477
                   Until_Condition: None
                    Until_Log_File: 
                     Until_Log_Pos: 0
                Master_SSL_Allowed: No
                Master_SSL_CA_File: 
                Master_SSL_CA_Path: 
                   Master_SSL_Cert: 
                 Master_SSL_Cipher: 
                    Master_SSL_Key: 
             Seconds_Behind_Master: 0
     Master_SSL_Verify_Server_Cert: No
                     Last_IO_Errno: 0
                     Last_IO_Error: 
                    Last_SQL_Errno: 0
                    Last_SQL_Error: 
       Replicate_Ignore_Server_Ids: 
                  Master_Server_Id: 150
                    Master_SSL_Crl: 
                Master_SSL_Crlpath: 
                        Using_Gtid: Slave_Pos
                       Gtid_IO_Pos: 0-150-9
           Replicate_Do_Domain_Ids: 
       Replicate_Ignore_Domain_Ids: 
                     Parallel_Mode: optimistic
                         SQL_Delay: 0
               SQL_Remaining_Delay: NULL
           Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates
                  Slave_DDL_Groups: 2
    Slave_Non_Transactional_Groups: 1
        Slave_Transactional_Groups: 0
    1 row in set (0.000 sec)
    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1358452.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Kotlin/JS工程构建及编译运行到浏览器

概述 Kotlin/JS 提供了转换 Kotlin 代码、Kotlin 标准库的能力,并且兼容 JavaScript 的任何依赖项。Kotlin/JS 的当前实现以 ES5 为目标。 使用 Kotlin/JS 的推荐方法是通过 kotlin.multiplatform Gradle 插件。它提供了一种集中且便捷的方式来设置与控制以 JavaS…

大数据框架ElasticSearch学习网站,让你的技能瞬间升级!

介绍:Elasticsearch是一个分布式、免费和开放的搜索和分析引擎,它适用于所有类型的数据,包括文本Elasticsearch是一个分布式、免费和开放的搜索和分析引擎,它适用于所有类型的数据,包括文本、数字、地理空间、结构化和…

如何保障开放网络边界安全?

针对开放式网络(办事大厅、视频网络等),如何在内部网络构建起一道安全屏障,有效解决广大用户普遍存在的无法保证网络边界完整、边界安全、公共场所终端摄像头管理、办事大厅智能设备(一体机等)管理、开放场…

1- forecasting at scale论文阅读

目录 1. 什么是时间序列2. 什么是时间序列预测3. 时间序列预测的范式4. 时间序列的专有名词介绍5. 时间序列评估 1. 什么是时间序列 按时间先后顺序出现的有序序列 2. 什么是时间序列预测 点预测:预测未来的某一个时间点,它的值到底是多少&#xff0c…

手机卡丢了不要急,全新补卡攻略赶紧收藏!

最近收到一些小伙伴的留言,手机卡办了好几张,所以就出现了手机卡丢失的现象。手机卡丢失补办更是让一些小伙伴们摸不着头脑。怎么补?如何补?需要哪些资料等等一系列的问题,让许多小伙伴都无从下手。今天小编就给大家整…

当试图回复传入消息时,消息应用程序会闪烁

问题描述: Actual Results: Unable to reply for incoming message as Messaging app flickers and closes. Expected Results: User should be able to send reply for incoming messages. Reproduction Steps: Stay in home screen. Receive an incoming mes…

Vue-2、初识Vue

1、helloword小案列 代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>初始Vue</title><!--引入vue--><script type"text/javascript" src"https://cdn.jsdelivr.n…

护眼台灯哪个牌子好?2024年专业护眼台灯品牌排行榜!

近些年来&#xff0c;护眼台灯作为视力健康照明工具愈发受到欢迎&#xff0c;越来越多的人使用护眼台灯取代传统白炽灯&#xff0c;做护眼台灯的产品也是层出不穷。 不过&#xff0c;也有很多人对护眼台灯的效果保持怀疑的台灯&#xff0c;一是对护眼效果的疑问&#xff0c;二…

一个人,2 年时间,每月赚 6w 美金,独立开发者故事丨 RTE 开发者日报 Vol.120

开发者朋友们大家好&#xff1a; 这里是 「RTE 开发者日报」 &#xff0c;每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE &#xff08;Real Time Engagement&#xff09; 领域内「有话题的 新闻 」、「有态度的 观点 」、「有意思的 数据 」、「有思考的 文…

数据结构与算法之约瑟夫问题求解

N个人围成一圈&#xff0c;从第一个开始报数&#xff0c;第M个将被杀掉&#xff0c;最后剩下一个人&#xff0c;其余人都被杀掉。例如N6&#xff0c;M5&#xff0c;被杀掉的顺序是&#xff1a;5、4、6、2、3、1。 问最后留下的人是谁&#xff1f; 分析&#xff1a; 如N6&…

【Path的使用】Node.js中的使用Path模块操作文件路径

&#x1f601; 作者简介&#xff1a;一名大四的学生&#xff0c;致力学习前端开发技术 ⭐️个人主页&#xff1a;夜宵饽饽的主页 ❔ 系列专栏&#xff1a;Node.js &#x1f450;学习格言&#xff1a;成功不是终点&#xff0c;失败也并非末日&#xff0c;最重要的是继续前进的勇…

2个nodejs进程利用redis 实现订阅发布

1.新建文件 redis_db.js use strict;const redis require(redis); const options {host: "127.0.0.1",port: 6379,password: "123456", // CONFIG SET requirepass "123456" }var array [] for(var i0; i<3; i){const client redis.crea…

期货日数据维护与使用_日数据维护_sqlite3数据库创建

目录 写在前面&#xff1a; 初始准备 开始编写数据库代码 t_product t_symbol_basemsg t_main_symbol t_online_symbol t_last30_daily 小贴士 写在前面&#xff1a; 本文默认已经创建了项目&#xff0c;如果不知道如何创建一个空项目的&#xff0c;请参看以下两篇博…

LLM Agent之再谈RAG的召回多样性优化

1. Query多样性 2019 Query Expansion Techniques for Information Retrieval: a Survey 传统搜索Query的扩展&#xff0c;有基于用户搜索日志挖掘的相似Query&#xff0c;有基于相同召回文档关联的相似Query&#xff0c;也有基于SMT的Query改写方案。那和大模型时代更搭配的自…

防蓝光护眼台灯哪个牌子好?2024护眼灯315合格产品

最近身边的宝妈们都来问我这个已有两个娃的老司机&#xff0c;刚上小学就是近视了&#xff0c;买什么台灯给家里孩子能保护视力&#xff0c;经过小学门口时&#xff0c;真的是戴眼镜的小朋友占多数&#xff0c;搜索了我国的近视数据&#xff0c;中国的人口有14亿人左右&#xf…

个人调用OCR

一、自己训练模型 二、调用现成API 此处介绍百度智能云API&#xff0c;因为有免费次数。&#xff08;原来一些网址在百度不是默认显示网址的&#xff0c;而是自己的网站名字&#xff09; 首页找到OCR 每个人每月能用1K次。&#xff08;有详细的API文档说明&#xff0c;不过跟…

爱了!水浸监测这个技术,看了都说好!

在当今社会&#xff0c;水浸事件可能对各类场所和设施造成严重的损害&#xff0c;从而威胁到财产安全和业务持续性。 水浸监控系统不仅仅是一种技术手段&#xff0c;更是对于防范水灾的一项战略性解决方案。水浸监控系统实时了解局势并采取迅速而有效的措施&#xff0c;从而最大…

STM32 CubeMX产生的程序架构

使用STM32CubeMX产生启动相关代码&#xff0c;配置各种外设。在后续程序开发过程中&#xff0c;有可能使用STM32CubeMX逐步产生使用的代码&#xff0c;为了将其产生的代码和我们程序隔离&#xff0c;一种可行的程序架构如下&#xff1a; 在此架构中&#xff0c;STM32CubeMX产生…

消化性溃疡与胃肠道微生物群

谷禾健康 据柳叶刀统计&#xff0c;消化性溃疡(PUD)每年影响全球400万人&#xff0c;据估计普通人群终生患病率为5−10%(Lanas A et al., 2017)。尽管消化性溃疡的全球患病率在过去几十年中有所下降&#xff0c;但其并发症的发生率却保持不变。 消化性溃疡是指胃或十二指肠黏膜…