知识库logo

开启数据库归档模式

日期:2019-08-16

目的
为了进一步加强数据库的安全性 ,建议需要开启数据库的归档模式。
这样做的好处有:
1.数据库文件出现因为磁盘坏块出现坏块,能快速应用归档日志进行恢复。
2.数据库服务器掉电产生数据库文献错误需要进行介质恢复的之后,可以直接应用归档恢复。
3.归档日志开启建议有条件的所有用户开启,oracle默认没有开启。

注意事项:
1.Imp批导入大量数据,大数据量批操作的时候建议关闭归档模式
2.建议磁盘空间够用的情况下,将归档日志目录设置到最大值。比如磁盘剩余200G那么归档日志存放目录大小就设置为200G

开启方式:
步骤一: 闭馆后在数据库服务器上备份数据库,并把数据库备份文件拷贝到其他机器保存。
步骤二:进入命令窗口 输入 sqlplus “/as sysdba” 进入超级用户sql环境
步骤三:运行 archive log list  命令得出下列界面,如果是 非存档模式就需要做调整
输入图片说明

步骤四:shutdown immediate 关闭数据库,然后 startup mount 打开数据库到加载模式
输入图片说明

步骤五:alter database archivelog; 改变归档模式为开启归档
输入图片说明

步骤六:查看归档文件存放位置并设置存放归档日志的空间大小,使用alter system set db_recovery_file_dest_size=500G scope=both; 设置的大小不要大于分区磁盘剩余大小
输入图片说明

更改归档目录大小:
输入图片说明

步骤六:
alter database open; 启动打开数据库

输入图片说明

步骤七:设置自动任务计划每天任务计划删除7天前的过久的归档日志,释放磁盘空间。

脚本文件内容如下,附件中也附带脚本:
输入图片说明

delete_arch.sh 文件内容:

!bin/sh

source /home/oracle/.bash_profile
rman target / cmdfile=/home /oracle/del_arch.sql

del_arch.sql 文件内容:

delete archivelog all completed before 'sysdate-7';

把上面内容的两个脚本放在/home/oracle下
Chmod  775 delete_arch.sh
Chmod  775 del_arch.sql

修改为最大权限

然后进入oracle用户
Crontab –e
在任务计划中加入如下:
00 00 * sh /home/oracle/delete_arch.sh

windows环境下对于的脚本:
在根盘符创建一个delete_arch的目录,比如D盘。

Delete_arch目录里面包含两个文件:
第一个文件:delte_arch.bat文件,文件内容是:
rman target / cmdfile=D:\ delete_arch\del_arch.sql

第二个文件:del_arch.sql
文件内容是:
delete archivelog all completed before 'sysdate-7';

将delte_arch.bat加入任务计划,每天晚上执行。

其它相关知识

跳转到在线服务平台