mysql同步如何实现同步已经使用很长时间的数据库

mysql同步如何实现同步已经使用很长时间的数据库,第1张

这种情况需要从新备份然后还原,因为你原来的bin-log全都不见了(有一定的存储周期),所以无论如何也不能同步原来的数据的。

如果有大量数据还原比较困难的话,建议采用单个表备份还原的方式

是做RAC吗?

oracle 11g可以不配npt,自带时间同步。

10g的话要配npt,物理机成功过,但在虚拟机下npt很坑(可能是虚拟网卡问题),我只在vm8以上版本成功过。

ntp的话找个rpm包装一下就可以了,redhat的话用systemd,所以装完设置好配置文件(百度一下就有),service nptd start就行了。

同步延迟是必然现象,不是问题。关键看具体业务,因同步延迟带来什么问题,然后再解决。

举个简单的例子

假设某论坛是主从数据库,我发一个帖子后立即刷新页面,因为显示帖子是读,这个时候如果延迟比较厉害,就会提示 404 -———帖子不存在,这就有问题了;我们还要假设用户的容忍度是看见自己的新内容,别人新的内容可以有延迟(实际上延迟是很小的时间单位)。

针对这个假设的问题,可以采取几种方案:

1、有更新数据后的 读取相关数据动作,都从默认到主库;

2、利用缓存;插入新的数据,会有last_id返回,组装成数据,缓存到前端。读取此 id 数据时,先从缓存取。

可以试试DBSync,主要特点:

独立运行

不需要在数据库中设置程序或脚本,不需要更改库结构,是一款独立的应用程序,因此不影响现有系统的运行,简单易用。

支持各种数据源

既支持常规数据库,如Aess、SQLServer、Oracle、MySQL、DB2等,又支持Excel、txt、csv等文件数据,任何可用OLEDB或ODBC连接的数据,均可参与同步。

异型数据库同步

既支持相同类型数据库之间的同步,如Aess到Aess、SQLServer到SQLServer,又支持异型数据库之间的同步,如Excel到Aess、Aess到SQLServer、SQLServer到Oracle等。

无人值守同步

软件具有定期自动同步的功能,只需预先设置好时间间隔,就可长期自动同步;支持系统重启后自动继续同步,防止意外关机重启而造成同步中断,从而实现无人值守同步。

支持增量同步

既支持简单的全部复制式同步(Insert),又支持增量同步。软件能快速扫描数据库,找出相互间的差异(即增量),只对增量进行同步。

支持断点续传

当同步中断后,再次同步时能从中断位置继续同步,避免每次都需要从头开始。

秒级实时同步

重复同步的时间间隔最短可设置为1秒,源数据库发生变更后,1秒后就同步过去,几乎等同于实时同步。

支持同步后处理

可设置同步后的SQL执行语句,实现同步之后的数据转换、公式计算等额外任务。

没有时间字段同步两个数据库:同步两个SQLServer数据库。

MySQL 为了实现replication 必须打开bin-log 项,也是打开二进制的MySQL 日志记录选项。MySQL 的bin log二进制日志,可以记录所有影响到数据库表中存储记录内容的sql *** 作,如insert / update / delete *** 作。

标准SQL语句:

虽然关系型数据库有很多,但是大多数都遵循SQL(结构化查询语言,Structured Query Language)标准。 常见的 *** 作有查询,新增,更新,删除,求和,排序等。

查询语句:SELECT param FROM table WHERE condition 该语句可以理解为从 table 中查询出满足 condition 条件的字段 param。

新增语句:INSERT INTO table (param1,param2,param3) VALUES (value1,value2,value3) 该语句可以理解为向table中的param1,param2,param3字段中分别插入value1,value2,value3。

回答1:再次同步只会同步变化的数据。因此不必担心数据量大的问题

回答2:可以测试一次发布/订阅所需要的总体时间,建议同步时间比这个总时间略大

回答3:发布订阅无法做到实时同步。如需实时同步,可尝试做日志传送、镜像,这两种可以达到用户感官上的实时同步

两个一样的oracle ,定期同步,说白了就是主备用数据库数据同步的问题;

如果数据库A和数据库B是建立在两台独立的数据库服务器上,那么采用dblink方式是一种可行的方式,

第一种方式:前提是数据库A和数据库B本地网是24小时互通的同时对数据同步实时性有比较高的要求,那么可以建立DBLINK,在两个库都建触发器,不管当前在哪个库发生数据更新的时候实时同步数据到目标数据库;

第二种方式:如果数据同步的实时性要求不高,则可以通过定制存储过程的方式(给两个库的数据表加时间戳或者更新标志,)定时同步数据;

第三种方式:通过给两个数据库的数据表加更新标志字段,以第一种方式为主以满足实时性的要求,以第二种方式为辅弥补可能存在的触发器执行更新未成功的情况。

以上的方案都是从数据层面所做的处理,对于数据实时同步还是会存在一定的风险,那么双机热备应该说是最好的选择了。

以上就是关于mysql同步如何实现同步已经使用很长时间的数据库全部的内容,包括:mysql同步如何实现同步已经使用很长时间的数据库、如何在两台linux小红帽企业版6.2系统下 ntp版本4.2的环境下做ntp的时间同步,安装oracle数据库时要求的。、数据库同步延迟怎么解决等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9551073.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存