关于数据库主从同步的疑问

2021-10-12 15:21:58 +08:00
 zhuzhuaini

想给数据库配置从库来达到多备份的目的,目前的备份方案为每天定时备份,感觉不安全,了解到主从备份这种机制,有一些疑问请求 V 友~

原数据库备份出来的数据大概在 30G 左右(使用的是 EXP 备份,应该算比较大量的数据了吧)

目前的疑问:

由于数据库的硬件配置不算很好,经常会碰到读 IO 爆炸的情况,担心配置主从之后,加剧这种情况,我的想法是既然是配置了主从,那从库应该会经常要从主库去读数据,那在已经读 IO 爆炸的情况下,从库再去读主库的数据来同步,那应该是有影响的,想问的是会有多大的影响,配置主从同步之后,对主库会增加多大的压力?

1187 次点击
所在节点    Oracle
10 条回复
FutherAll
2021-10-12 15:53:13 +08:00
基于 binlog 同步的,不会频繁从主库读数据吧
zhuzhuaini
2021-10-12 17:23:32 +08:00
@FutherAll 呃,,所以来了解下有没有做过这方面的心得给点建议~不敢贸然上手啊,而且这玩意还没法测试
FutherAll
2021-10-12 18:01:55 +08:00
@zhuzhuaini https://dev.mysql.com/doc/refman/5.7/en/group-replication-primary-secondary-replication.html
从库是通过 I/O 线程拉取主库的 binlog 然后重放实现同步数据的,理论上是会增加主库的整体 I/O 压力,但是感觉还好。
zhuzhuaini
2021-10-12 19:20:50 +08:00
@FutherAll 我这个是 oracle,也是拉取的 binlog 么
adoal
2021-10-12 19:54:39 +08:00
oracle 的叫 dataguard
bg7lgb
2021-10-12 20:34:17 +08:00
oracle 同步通过归档日志完成的。同步的数据量取决于数据变动的数量,也就是产生的归档日志。IO 爆,考虑升级 ssd 或者调整数据库参数,profile 或者检查一下慢 SQL 的执行计划,然后进行调优。
justfly
2021-10-12 20:54:00 +08:00
听起来不会有太大影响,读 IO 爆炸,没有写的话,主从同步不会占用什么带宽,因为写的少需要同步的东西也少。
zhuzhuaini
2021-10-12 23:51:28 +08:00
@bg7lgb IO 爆 已经升级 SSD 了,不过是普通的 sas ssd 应该走的 sata 协议 速度不快 读也就 400 多 M 估计还是要做数据库调优 但是我不会...先搞搞简单的主从备份 感谢你的回答
zhuzhuaini
2021-10-12 23:53:46 +08:00
@justfly 喔 了解了 确实写的比较少 基本上大量的读操作,我寻思的是主从备份时 从库得去主库拉取变动的数据用于同步吧 那对于主库来说 这个拉取变动就是读操作啊 就是想先问问这个读的操作影响有多少
zhuzhuaini
2021-10-12 23:55:31 +08:00
@justfly 比如我现在数据库 30g 第一次同步的时候肯定需要读 30g 的数据 这个可以理解 那我如果要实时备份 他不就得 实时的拉主库的变动数据么 这个读的量有多大

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/807318

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX