一. 数据库容灾基本实现原理,以下三种方式实现(主观理解)
1. 数据库完整备份+差异备份+实时监控。
2. 实时监控数据库差异变化(自定义算法分析数据库日志),有变化则备份,否则跳过。
3. 通过数据库事件通知,如果数据库发生变化,则发送通知消息到service stock服务,读取服务消息队列进行分析。
二. 方式2和方式3目前还不知道如何通过程序实现,方式1实现
1. 后台程序对指定数据库先进行一次完整备份;
2. 在程序中通过监听器+定时器实现实时或定时对数据库进行差异备份;
测试方式1生成备份文件,存在问题:
1. 与sqlserver自带的工具生成的备份文件对比,方式1生成备份文件明显大(每次差异备份后大4M左右)
2. 备份时间间隔很小的情况下,备份文件会很大
三. 问题总结
1. 不清楚市面上容灾备份产品如何监测数据库变化以及分析算法(网上有的对指定表结构,数据变化监测,表太多行不通)
2. 方式3针对2008版本之后提供的新服务
3. sqlserver需要深入了解