我们的oracle数据库默认采用的是非归档模式,假如说一共有三个重做日志组,当三个日志组全部写满之后将从第一个日志组开始循环记录,并且第一个日志组中的内容将被彻底覆盖,这样,如果数据库崩溃了,想要恢复很早之前的数据,那就坑比了。
怎么办?
你问我啊,我告诉你。切换数据库日志模式为归档模式就OK了,这样写入日志循环的时候,会先把日志组中的数据写入到归档日志中,然后才会被覆盖。你看,问题解决了吧?
有人可能会问:哎,那究竟什么时候应该采用归档模式呢?
这要看数据库对应的应用系统是什么样的要求了,如果数据绝对不允许丢失则必须使用归档模式。
如果只强调系统的运行效率,至于数据丢失没有那么重要的话,可以采取非归档模式。但是还是建议管理员经常定时的进行数据库完整备份。
切换日志模式:
① 查看日志模式
② 关闭数据库,重新启动并加载数据库但不打开数据库
③ 改变日志模式
④ 打开数据库
OK,可以在PLSQL developer工具里通过select log_mode from v$database;语句查看归档模式,也可以通过在SQL*plus里输入archive log list进行查看。
a.
b.
如果你还想知道点别的,请自行百度吧!