mysql-syn-数据库单项同步(主/从)

 

这几天在网上查找了许多资料,几乎全部是雷同的信息,经过一番测试作出如下结论,经过本人测试。

 

主从单向数据同步

1、数据库版本
    主数据库/从数据库    版本号5.0.24a

2、分别修改(主从)mysql安装目录-根目录下的配置文件【my.ini】

3、我的测试环境是这样的
    主数据库机器ip地址:192.168.1.120
    从数据库机器ip地址:192.168.1.119

4、主/从机器中的配置细节如下

    0)、start.
    1)、按照官方的提法主/从数据库配置文件my.ini中的server-id = (num)的值不能相同即可。
    2)、修改主数据库配置文件my.ini文件找到[mysqld]标识符(建议在添加以下代码之前首先创建号要同步的数据库),键入以下代码
        log-bin=mysql-testsyn-bin    #--主库二进制日志文件名的前缀(会在data目录中出现)
        binlog-do-db=syntest        #--要同步的数据库
        server-id = 1            #--serverid和从库不同即可
    3)、步骤2)执行完毕后重启mysql服务,root用户登录执行以下命令
        1、创建用户syntest.拥有replication slave权限
            grant replication slave on *.* to "syntest"@"192.168.1.%" identified by 'syntest' with grant option;
        2、在设置syntest用户 增删改查,等权限。
    4)、查看主库状态,使用mysql自带命令行
        show master status;
        +---------------------------------+----------+------------------+------------------------+
        | File                                    | Position | Binlog_Do_DB | Binlog_Ignore_DB |
        +---------------------------------+----------+------------------+------------------------+
        | mysql-testsyn-bin.000003 |      640 | syntest           |                               |
        +---------------------------------+----------+------------------+------------------------+
        1 row in set (0.01 sec)

        根据提示可以看出,
            file=表示同步使用的索引文件(文件后最默认是从000001开始)
            position=偏移量
            Binlog_Do_DB=备份的数据库
            Binlog_Ignore_DB=忽略的数据库
        经过测试、如果从步骤 2)-3)配置完后当执行步骤4)时如果没有结果说明配置失败.
    5)、修改从数据库配置文件my.ini文件找到[mysqld]标识符(建议在添加以下代码之前首先创建号要同步的数据库),键入以下代码
        server-id = 2            #--serverid和主库不同即可
        master-host = 192.168.1.120    #--主机ip地址
        master-user = syntest        #--主机登录用户名
        master-password = syntest    #--主机登录密码
        master-port = 3306        #--主机端口
        master-connect-retry = 5    #--重试间隔时间(秒)
        replicate-do-db = syntest    #--同步db
    6)、步骤5)执行完毕后重启mysql服务,root用户登录执行命令
        show SLAVE status;
    7)、执行以下代码
        stop slave;
        start slave;
    8)、在主数据库中创建一张表(需要使用代码的方式创建表),在看从数据库.
    9)、end.

 

5、如何正确的使用同步,以下是测试到的步骤(同仁如有其它测试结果请一并贴出来 )
    1)、主从配置完后需要测试
        1、查看data目录下的(*.err)文件如果没有出现[ERROR]字符说明通信成功,从数据库中data目录.
        2、主从库中分别创建一张一模一样的表,注意第一次创建测试是否已通信成功,不能使用MySQL-Front等工具创建,不吃这一套;得用代码创建.
        3、与步骤2同时在写一个insert添加语句执行。
        4、查看以上2-3步骤皆为在主库中执行,于此同时查看从书库,如果有一模一样的数据则说明通信成功.
    2)、主/从双方的库中表保持一致,此时创建一张“临时表”作为测试是否通信.
        在保持一致的同时从库中表的内容不能与主表中的内容不一致
        【
            例如:test表在主从中同时出现,id字段将从1开始,地址从表中已经有了一条记录,说明占用了id为1值,此时在主库中表test添加一条记录
            id同时也是1,这时就通信失败了,由于数据库表字段唯一标识因此导致通信失败,则1、删除从表中的记录;2、必须重启服务,才能挽救通信.
        】
    3)、如果主从库中的配置---配置完成在启动mysql服务之前先删除data目录中的日志等文件,除了“目录”,“ibdata1”文件外其余全部删除.
    4)、在通信测试未成功之前不能使用工具创建表,添加记录等操作,第一次必须使用代码的形式来创建执行;通信成功后方可使用工具执行.
    5)、一旦通信成功切忌双方中data目录中的文件不能随意打开,原因:“由于mysql服务一旦启动则会自动根据设定的时间通信,如果打开索引等文件则就占用了IO流操作,固因此
        服务会自动终止通信(需要重启才能拯救).



6、同步实现大概的流程(同仁如有其它不同的看法与流程图,敬请贴出来交流 )

    1、主/从双方修改配置文件,通过某种通信两台机器知道谁是“主”,谁是“从”.
    2、查找“主”方是否配置成功,使用代码 show MASTER status;所返回的结果中记录了关于同步时所使用到的索引文件;根据log-bin=[文件前缀名称].00001,每重启一次则后面的编号会自动加一.
    3、“从”数据库机器mysql服务启动时根据配置信息找到主数据库,将会根据“主” show master status中的file字段信息,生成4个文件分别如下:
        第一次配置成功启动:
            *-relay-bin.000001(*号代表本机的“计算机名称”)
            *-relay-bin.index
            master.info
            relay-log.info
        第二次启动
            *-relay-bin.000001后面的编号会变
        以上提到的文件作用流程如下:
            1、“从”服务器启动mysql服务时,根据配置文件信息找到“主”服务器,根据 show master status 中的file字段信息首先创建master.info文件,记录了关于
            链接“主”服务器的参数配置信息,其中最主要的一条是:“以字段file的值”记录,
            2、其次创建relay-log.info文件,其中主要是记录以master.info文件中“以字段file的值”的一个关联.于此同时记录该文件与*-relay-bin.index文件的关联
            3、再次通过文件*-relay-bin.index中的记录在创建具体操作文件就是:(*-relay-bin.000001)索引文件.
            4、每次通信会将“主”服务器上的索引文件内容当下来存放在*-relay-bin.00000num索引文件中,同时,执行“主”最近更新的数据,到“从”服务器中.
    4、最简单的理解就是:
        1、“主”服务器启动后生成索引文件,用于记录对数据库更新的sql语句.
        2、“从”服务器启动后会根据“主”服务器上的索引文件生成本地索引文件,用于记录从“主”服务器上当下来的数据.
        3、“从”服务器根据设定的时间间隔从“主”服务器上抓取数据,然后在执行,最后成为本地数据.
    5、如图:
        流程图    /查看“流程图”目录.
        ... ...


        本流程图是根据以上实现步骤的实现,总结出自己对数据同步的流程图,同志们方可参考,如有不对的地方,请与我来信(594131528@qq.com),如果可以的话,提出修改建议等。。。谢谢合作。

感兴趣者请查看附件、其中包含了本人的理解,在测试中遇到了那些问题,等等。。。

 

手把手教你用CH582的USB0/1双接口玩转CherryUSB协议栈(附完整代码) 本文深入解析CH582双USB接口硬件架构,详细讲解如何通过CherryUSB协议栈实现双接口协同工作,包括中断处理设计、端点资源分配和复合设备描述符配置。提供HID+CDC复合设备实战案例,并分享高级调试技巧与性能优化方法,帮助开发者充分利用CH582的USB0/1双接口潜力。 阅读详情

相关推荐

优化NEXYS A7开发板(Xilinx Artix-7)Microblaze核的FLASH读写性能实战

本文针对NEXYS A7开发板(Xilinx Artix-7)上Microblaze核读写FLASH速度慢的问题,提供了系统性的优化实战指南。通过深入分析SPI控制器配置、Flash指令模式选择、Microblaze核的Cache与硬件加速器优化,以及程序运行位置(BRAM vs DDR)的调整,有效将FLASH读写性能从“龟速”提升至接近理论峰值。文章结合实测数据,为FPGA嵌入式开发者提供了清晰的性能瓶颈分析与解决方案。

carrot的博客 256

mysql同步大师_Mysql 同步大师(MySQLSync)

详情相关评论(0)MySQL同步工具使用说明:一、安装好MYSQL,建立所需数据库,停止所有的MYSQL服务器。二、请把下面六行加入到每一个需要同步的MYSQL的my.ini文件中,其中backup_db填写你真实的需要同步的数据库,server-id代表服务器编号,要求每个服务器的编号不能相同,以1,2,3....等数字顺序排列:server-id=1 #服务器编号.log-bin=c:\mys...

weixin_39627201的博客 512

Python Trimesh库实战:5分钟搞定STL文件解析与3D模型可视化

本文介绍了如何使用Python的Trimesh库快速解析STL文件并进行3D模型可视化。通过简洁的代码示例,演示了从环境搭建、模型加载、几何数据提取到基础变换和批量处理的核心流程,帮助开发者和工程师在5分钟内高效完成3D数据处理与可视化任务。

weixin_32005771的博客 158

mysql半同步 syn点位_说说MySQL的半同步复制

MySQL Semisynchronous ReplicationMySQL5.5 除了支持内置的异步复制机制,还提供了接口支持半同步复制的机制。在mysql异步复制的情况下,Mysql Master Server将自己的Binary Log通过复制线程传输出去以后,Mysql Master Sever就自动返回数据给客户端,而不管slave上是否接受到了这个二进制日志。在半同步复制的架构下,当m...

weixin_32081079的博客 160

深度残差网络的无人机多目标识别

深度残差网络的无人机多目标识别 人工智能技术与咨询 来源:《图学学报》。作者翟进有等 摘要:传统目标识别算法中,经典的区域建议网络(RPN)在提取目标候选区域时计算量大,时间复杂度较高,因此提出一种级联区域建议网络(CRPN)的搜索模式对其进行改善。此外,深层次的卷积神经网络训练中易产生退化现象,而引入残差学习的深度残差网络(ResNet),能够有效抑制该现象。对多种不同深度以及不同参数的网络模型进行研究,将两层残差学习模块与三层残差学习模块结合使用,设计出一种占用内存更小、时间复杂度更低的新型多捷.

m0_62870606的博客 3106

HIDL概述

HIDL背景 Treble 是 Google Android 团队的一项重大项目,意在 Android 操作系统框架在架构方面的一项重大改变,旨在让制造商以更低的成本更轻松、更快速地将设备更新到新版 Android 系统。Android 7.x 及更早版本中没有正式的供应商接口,因此设备制造商必须更新大量 Android 代码才能将设备更新到新版 Android 系统: 图1 Treble ...

u013357557的专栏 2万+

mysql linux-syn25000是什么_mysql-syn-数据库单项同步(主/从)

这几天在网上查找了许多资料,几乎全部是雷同的信息,经过一番测试作出如下结论,经过本人测试。主从单向数据同步1、数据库版本主数据库/从数据库 版本号5.0.24a2、分别修改(主从)mysql安装目录-根目录下的配置文件【my.ini】3、我的测试环境是这样的主数据库机器ip地址:192.168.1.120从数据库机器ip地址:192.168.1.1194、主/从机器中的配置细节如下0)、st...

weixin_39653448的博客 153

统信UOS上Qt5.12.8离线安装保姆级教程(避坑网络登录与GCC选择)

本文提供统信UOS系统下Qt5.12.8离线安装的完整教程,涵盖环境准备、安装步骤、常见问题解决及开发优化建议。特别针对无网络环境下的登录验证跳过、GCC版本匹配等关键问题提供解决方案,帮助开发者快速搭建稳定的Qt开发环境。

weixin_30666401的博客 461

【MySQL】MySQL学习笔记

【MySQL】MySQL学习笔记学习笔记前言目录概览笔记MySQL 的特性、安装MySQL 的特性MySQL 安装MySQL 基本操作0. 几种操作MySQL 的方式workbenchNavicat for MySQL命令行操作python 学习笔记 前言 在完成python-socket-GNSS&PIC 融合传输后,现在需要将服务端假设到阿里云服务器上,并完成数据库的存储。 目录概览 在学习一门新技术前,通常会先浏览它的目录,以此先掌握技术的大概结构,这样有助于安排学习规划、侧重重点等,可以更快

synjoker的博客 398

刷机维修进阶教程-----adb禁用错了系统app导致无法开机 如何保数据无损恢复机型

在刷机维修过程中 。我们会遇到一些由于客户使用adb指令来禁用手机app而导致手机无法开机进入系统的故障机型。通常此类问题机型有好几种解决方法。但如果客户需要保数据来恢复机型。其实操作也是很简单的.还有类似误删除应用导致不开机等等如何保数据。  通过博文了解💝💝💝    1💝💝💝----adb禁用或者删除系统app导致无法开机的几种解决方法 2💝💝💝----如何保数据来无损恢复机型 3💝💝💝----其他保数据解决系统类故障无法开机的步骤解析

小马哥的专栏 1349

基础入门篇 | YOLOv8 项目【训练】【验证】【推理】最简单教程 | YOLOv8必看 | 最新更新,直接打印 FPS,mAP50,75,95

三个文件搞定YOLOv8【训练】【验证】【推理】🚀🚀🚀

Coding... 2万+

mysql半同步 syn点位_基于MySQL实现数据库的半同步主从复制

在线QQ客服:1922638专业的SQL Server、MySQL数据库同步软件首先我们来了解一下数据库常遇到的问题:第一就是性能上的问题1、向上拓展(硬件方面)scale up 个体本身 容易达到极限2、向外拓展scale out第二就是可用性的问题1、数据库服务中断2、误操作数据损坏3、硬件故障4、数据库升级测试遭遇bug5、******基于以上这些问题就有了一个比较好的解决方案,那就是实现数...

weixin_32001191的博客 183

uniapp - 使用 <video> 播放视频黑屏,浏览器控制台报错: DOMException: The element has on supported sources.(详细完美解决方案)

uniapp video 视频播放黑屏,uniapp 报错DOMException: The element has on supported sources.,uniapp如何解决DOMException: The element has on supported sources.,uniapp使用video标签无法播放视频出现黑屏问题处理,uniapp解决video视频黑屏显示0秒,并且浏览器报错DOMException: The element has on supported sources.,un

✅ 精选推荐文章 7054

mysql半同步 syn点位,MYSQL数据库的主从复制,半同步复制和组复制

在线QQ客服:1922638专业的SQL Server、MySQL数据库同步软件原理:master端产生一个binlogdump线程,slave端产生I/O线程和SQL线程1.master节点上的binlogdump线程,在slave与其正常连接的情况下,将binlog发送到slave上。2.slave节点上的I/O线程,通过读取master节点发送的内容,并将数据复制到本地的relaylog中。...

weixin_33895652的博客 183

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

当MySQL数据库遇到Syn Flooding

Syn攻击是最常见又最容易被利用的一种攻击手法,利用TCP协议的缺陷,发送大量伪造TCP连接请求,常用假冒的IP发来海量的SYN包,被攻击的服务器回应SYN+ACK,因为对方是假冒的IP,永远收不到包并且不会回应,导致被攻击服务器保持大量SYN_RECV状态的半连接,并且会重试默认5次回应握手包,塞满TCP等待连接队列,资源耗尽,让正常的业务请求连接不进来。 Syn攻击常见于应用服务器,...

die7030的博客 239

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

mysql linux-syn25000是什么_当MySQL数据库遇到Syn Flooding

Syn攻击是最常见又最容易被利用的一种攻击手法,利用TCP协议的缺陷,发送大量伪造TCP连接请求,常用假冒的IP发来海量的SYN包,被攻击的服务器回应SYN+ACK,因为对方是假冒的IP,永远收不到包并且不会回应,导致被攻击服务器保持大量SYN_RECV状态的半连接,并且会重试默认5次回应握手包,塞满TCP等待连接队列,资源耗尽,让正常的业务请求连接不进来。Syn攻击常见于应用服务器,而数据库服务...

weixin_33552698的博客 109

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

MYSQL DB SYN

2down vote In mysql, you run these commands on your DB handle before running your queries the tables will auto lock : begin work; You then run your queries or have code igniter run your variou

xak的专栏 1119

mysql->redis同步

hello,大家好,今天看到一篇redis相关的文章,我自己专门把代码搞到跑了一下,还是不错的,对于我们平时使用redis和mysql同步还是很不错的,工作中也是可以去使用的,因为这个确实会比我们去使用代码的方式去读取数据库再次插入到redis中,效率会高的多。 1.开发环境 开发环境:linxu 开发语言:C/C++ mysql 使用的库:hiredis 2.redis通信协议 (1...

Travelerwz的博客 1084

mysql linux-syn25000是什么_解决当MySQL数据库遇到Syn Flooding问题

Syn攻击是最常见又最容易被利用的一种攻击手法,利用TCP协议的缺陷,发送大量伪造TCP连接请求,常用假冒的IP发来海量的SYN包,被攻击的服务器回应SYN+ACK,因为对方是假冒的IP,永远收不到包并且不会回应,导致被攻击服务器保持大量SYN_RECV状态的半连接,并且会重试默认5次回应握手包,塞满TCP等待连接队列,资源耗尽,让正常的业务请求连接不进来。Syn攻击常见于应用服务器,而数据库服务...

weixin_34194520的博客 193

MySQL实现数据同步

这套脚本实现:核心文件:3 个 2. 核心同步逻辑: 3. 工具类: 三、配置表结构(必须创建) 库: 表: 四、最关键配置说明(决定是否同步) 1. 是否启用同步 2. 按哪个时间字段同步 3. 从哪个时间开始同步 同步完成后会自动更新为当前日期,所以第二遍不会重复同步。

Java资料站 483

Galera集群:高可用MySQL同步复制方案

GaleraCluster是一个基于同步复制的多主数据库集群解决方案,主要支持MySQL/MariaDB。其核心特性包括:真正的多主架构(所有节点可读写)、强一致性保障(同步复制机制)和自动故障转移能力。关键技术实现包含WSREPAPI的事务写集管理和冲突检测机制,以及底层GCP的通信保障。典型应用场景为金融、电商等高可用性要求的系统。部署时需注意网络配置、性能调优和脑裂预防,建议采用奇数节点、监控系统和定期演练。该方案适合中等写入负载(<5000TPS)且需要强一致性的关键业务系统。

weixin_46060074的博客 1442

数据库数据同步和主主同步脚本使用说明

数据库数据同步和主主同步脚本使用说明 1.脚本目录介绍 startDataBaseSync.sh 数据库数据同步,保证配置主主前两台服务器数据库的数据一致。 startMasterSync.sh mysql主主同步脚本 checkSlaveStatus.sh 检测主主同步状态 config.sh 执行脚本所需要的配置 2.config....

qq_35853840的博客 612

mysql 主从怎么监控_如何监控MySQL主从同步情况

在高并发网站架构中,MySQL数据库主从同步是不可或缺的,不过经常会发生由于网络原因或者操作错误,MySQL主从经常会出现不同步的情况,那么如何监控MySQL主从同步,也变成网站正常运行的重要环节。 MySQL同步功能由3个线程(master上1个,slave上2个)来实现,简单的说就是:master发送日志一个,slave接收日志一个,slave运行日志一个。首先,我们解释一下show sla...

weixin_39785400的博客 395

Redis与mysql同步之路

【java】gearman进行Mysql到Redis的复制 一.整体思路说明 以mysql数据为主,写操作(insert,update,delete)交于mysql,读操作交于redis。当数据库数据发生改变时,通过Mysql触发器(insert,update,delete)异步调用gearman的UDF提交一个job给job server(可以由PHP,也可以用java),当执行jo

shenbug的博客 2229
上一篇: 创建CSV文件
下一篇: Firefox 快捷键列表
libgcn
博客等级 码龄16年 0粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值