在我们日常的数据库开发中,由于业务产品的需要,会涉及到数据库的备份,以下将会详细分析数据库的备份原理

1:数据库的主从备份流程图

浅谈MySQL之备份复制 Master-Slave

2: 对于javaer操作数据库而言,我们一般是使用jdbc的,在存在主从的数据库架构中,一般会有Master,Slave服务器,在使用jdbc操作数据库的时候,一般都是对Master服务器进行读写的(少数情况下会读),此时Master会生成一个binlog文件(数据库的二进制日志文件),当有slave服务器连接的时候,Master服务器会启动一个i/o线程主动的向slave服务器推送master_binlog文件,然后slave服务器会新启一个i/o线程来接受Master服务器推送过来的master_binlog,整个过程完成后,会形成ready_binlog文件,以供slave服务器新启的一个sql线程来执行这个ready_binlog文件,从而达到数据同步的目的。

3:数据库同步的三种方式 ----  默认的是 statement

      3.1:statement : master服务器每执行一条sql语句都会写入到master_binlog中,单位是sql语句,和jdbc中的statement很像

      3.2:row:将master服务器更改过影响的行数据会写入到master_binlog中

      3.3:mix:是statement和row的混合

4:数据库的备份是基于binlog的。

相关文章:

  • 2021-06-18
  • 2021-11-23
  • 2021-12-12
猜你喜欢
  • 2021-06-07
  • 2021-08-12
  • 2022-12-23
  • 2022-12-23
  • 2022-01-15
  • 2022-12-23
相关资源
相似解决方案