关于后端:主从数据库

34次阅读

共计 660 个字符,预计需要花费 2 分钟才能阅读完成。

主从数据库

特点

  • 主从模式(一主多从,多主一从,级联复制)
  • 读写拆散
  • 主从复制

主从复制

模式

  1. 异步模式
    主数据库增删改数据过程中,不会被动告诉 Dump 线程去同步从库
  2. 半同步模式
    主数据库增删改数据过程中,会被动告诉 Dump 线程去同步从库,并收到一台从库的返回信息后,才会 commit
  3. 全同步模式
    主数据库增删改数据过程中,会被动告诉 Dump 线程,并期待所有从库返回信息后才 commit

bin log 记录格局(实现粒度)

  1. SBR(sql base replication)
    mysql5 之前版本,bin log 只记录会批改数据的 sql 语句,很大水平上缩小日志文件的大小,节约 IO 读写和升高网络传输工夫,进步性能。
    但从库同步时须要从新执行 sql;一些状况下,还会导致主从库数据不统一。

比方一个 SQL 语句调用了用户定义的函数,调用了返回随机值的函数,在数据表中应用了自增列,以及应用了上下文数据(context data, 比方用一个表的行数作为某个插入字段值,或者在 update/delete 语句中应用了 limit 子句)

  1. RBR(row base replication)
    bin log 只记录批改的行,批改成什么。从库同步间接调用存储引擎的接口进行增删改,不须要残缺地进行 sql 语句的执行。
    但毛病在于日志文件会比拟大,并且批改数据量大时,同步须要的工夫比拟长
  2. MBR(mixed base replication)
    mysql 会依据执行的 sql 语句来决定采纳以上两种的哪种形式来保留日志

长处

  • 读写拆散,进步查问效率
  • 程度扩大数据库的负载,容错,保障高可用
  • 实时容灾,可故障切换
  • 数据备份
正文完
 0