Oracle 数据库闪回通常设置在 DataGuard 备库,如果主库误删数据,可用备库闪回至删除点之前,获取丢失数据,然后再自动同步回来!
注意: 主库不建议开启闪回,首先影响性能,其次主库不可能为了某些数据去做闪回,所以很鸡肋!
那么,DataGuard 备库如何开启数据库闪回?
- 需要有充足的磁盘空间
1、第一步,关闭 DataGuard 备库同步进程
ALTERDATABASERECOVERMANAGEDSTANDBYDATABASECANCEL;
2、第二步,开启闪回功能
ALTERDATABASEFLASHBACKON; altersystemsetdb_recovery_file_dest='/oradata/fast_recovery_area'scope=spfile; altersystemsetdb_recovery_file_dest_size=100Gscope=spfile;
注意:闪回目录 /oradata/fast_recovery_area
需要物理真是存在,设置的闪回区大小即闪回日志占用磁盘空间的上限!
3、第三步,重启备库生效,重新开启备库同步进程
shutdownimmediatestartupmountALTERDATABASERECOVERMANAGEDSTANDBYDATABASEDISCONNECTFROMSESSION;
4、第四步,检查闪回开启情况
selectFLASHBACK_ONfromv$database; showparameterdb_recovery_file_destshowparameterdb_recovery_file_dest_sizeshowparameterdb_flashback_retention_target
开启闪回后,持续观察 🔎 一段时间,确认 100G 空间能够保留多久的闪回日志,大致推算出需要保存固定时间闪回日志的空间,根据实际情况进行修改!
本次分享到此结束啦~