通用
1.理解redo,undo,LGWR,logswitch,chekpoint
redo - 日志记录
undo - 回滚
LGWR - 后台进程,日志写入
1.每过3秒
2.提交事务
3.log buffer cache 重做日志缓存区满三分之一
4.log buffer cache 重做日志缓存区记录超1mb的更改时
5.DBWR 需要写入的数据的SCN大于LGWR记录的SCN,DBWR 触发LGWR写入
logswitch - LGWR写满日志切换、手动切换
checkpoint - 检查点
1.日志切换 switch logfile
2.alter system checkpoint
3.正常关闭数据库
2.dml操作流程
update-data buffer cache-datafile-log buffer cache-data buffer cache-commit-redo logfile-checkpoint-datafile
DG
1.LGWR 分为 SYNC/ASYNC
commit后数据记录到本地redo log,然后通过LNSn网络进程发送。
SYNC: 本地有记录,且LNSn发送、接收成功
ASYNC:本地有记录即可
2.DG分为LGWR和ARCH两种进程方式
使用LGWR进程必须配置文件中明确指定,LGWR才会进行reply。11g默认是LGWR ASYNC 10g默认是ARCH SYNC
LGWR:LNSn-RFS-standby redo logs-realt time-MRP/LSP-standby database
LNSn-RFS-standby redo logs-ARCH0-standby database
ARCH: ARCH0-ARCH1-RFS-standby redo logs-ARCH0-standby database
3.redo reply 分为实时应用和归档应用(LGWR)
查看是否使用:select dest_id,recovery_mode from v$archive_dest_status where dest_id=2;
4.数据保护模式
最大保护(Maximum Protection) 最高可用性(Maximum availability)最高性能(Maximum performance)
5.物理dg 逻辑dg
物理:将传过来的redo应用到备库的数据块进行更新数据
逻辑:将传过来的redo转化为SQL语句,备库执行sql进行更新数据
6.对于物理dg,db_name必须保持一致
7.为什么主库要创建standby redo文件,standby redo文件在dataguard中是怎么起作用的
standby redo在备库中的作用是接受主库传输过来的日志文件,以便被rfs进程或者lsp进程应用。
主库中standby redo没有作用,standby redo只有在备库中起在线日志文件的作用。主库中·同时创建standby redo是为了做主备切换时主库变被库,日志文件由主库redo变成standby redo文件