热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

Oracle数据库多路归档,防止单点故障

如果要解决归档空间满或者某路径归档满的问题,可以设置两个归档路径,路径为可选optional,且log_archive_min_succeed_dest参数

如果要解决归档空间满或者某路径归档满的问题,可以设置两个归档路径,路径为可选optional,且log_archive_min_succeed_dest参数

一、通常用来解决如下问题:
单个归档目录满导致数据库hang的问题
归档多路径,防止单点故障

二、多路径归档的实现如下通过以下两个参数来控制,具体如下:
LOG_ARCHIVE_DEST_n ---使用LOG_ARCHIVE_DEST_n参数定义多个归档路径
log_archive_min_succeed_dest

三、参数说明:
LOG_ARCHIVE_DEST_n 参数定义多个归档路径,使用初始化参数LOG_ARCHIVE_DEST_n配置归档位置时,可以在归档位置上指定OPTIONAL或MANDATORY选项.指定MANDATORY选项时,可以设置REOPEN属性。
OPTIONAL:该选项是默认选项.使用该选项时,无论归档是否成功,都可以覆盖重做日志。
MANDATORY:强制归档.使用该选项时,只有在归档成功之后,重做日志才能被覆盖。
REOPEN:该属性用于指定重新归档的时间间隔,默认值为300秒,必须跟在MANDATORY后。
LOG_ARCHIVE_MIN_SUCCEED_DEST 参数控制本地归档的最小成功个数
四、实验步骤:
如果要解决归档空间满或者某路径归档满的问题,,可以设置两个归档路径,路径为可选optional,且log_archive_min_succeed_dest参数设置为1,即可解决相关问题。缺点是两个目录都正常情况下,需要归档两份归档日志。具体实验步骤如下:

1,修改为多路径模式,每个路径为可选,但至少一个是成功才可以日志覆盖:

SQL> alter systemset log_archive_dest_1='location=/Oracle/archive/arch1 optional';

System altered.

SQL> alter systemset log_archive_dest_2='location=/oracle/archive/arch2 optional';

System altered.

SQL> showparameter log_archive_min_succeed_dest

NAME TYPE VALUE

----------------------------------------------- ------------------------------

log_archive_min_succeed_dest integer 1

2,经过多档测试,均可成功进行归档:

SQL> alter systemswitch logfile;

System altered.

[root@dtydb0 arch1]#ls -l /oracle/archive/arch*

/oracle/archive/arch1:

total 389564

-rw-r----- 1 oracle oinstall 397999616 May 14 17:05 1_211_740745127.dbf
-rw-r----- 1 oracle oinstall 507904 May 14 17:06 1_212_740745127.dbf

/oracle/archive/arch2:

total 389564

-rw-r----- 1 oracle oinstall 397999616 May 14 17:05 1_211_740745127.dbf
-rw-r----- 1 oracle oinstall 507904 May 14 17:06 1_212_740745127.dbf

3,修改arch1的权限,是不能归档到arch1,继续归档,发现只能归档到arch2,当数据库归档正常。

[root@linuxidc]# chown -R root:root ./arch1

[root@linuxidc]# ls -lrt

SQL> alter systemswitch logfile;

System altered.

[root@linuxidc]# ls -l /oracle/archive/arch*

/oracle/archive/arch1:

total 389564

-rw-r----- 1 root root 397999616 May 14 17:05 1_211_740745127.dbf
-rw-r----- 1 root root 507904 May 14 17:06 1_212_740745127.dbf

/oracle/archive/arch2:

total 390272

-rw-r----- 1 oracle oinstall 397999616 May 14 17:05 1_211_740745127.dbf
-rw-r----- 1 oracle oinstall 507904 May 14 17:06 1_212_740745127.dbf
-rw-r----- 1 oracle oinstall 351744 May 14 17:08 1_213_740745127.dbf
-rw-r----- 1 oracle oinstall 332800 May 14 17:08 1_214_740745127.dbf
-rw-r----- 1 oracle oinstall 2560 May 14 17:08 1_215_740745127.dbf
-rw-r----- 1 oracle oinstall 6656 May 14 17:08 1_216_740745127.dbf

4,修改回权限,2个路径的归档又恢复正常

[root@linuxidc]# chown -R oracle:oinstall /oracle/archive/arch1
[root@linuxidc]# ls -l /oracle/archive/arch*

/oracle/archive/arch1:

total 389788

-rwxr-xr-x 1 oracle oinstall 397999616 May 14 17:05 1_211_740745127.dbf
-rwxr-xr-x 1 oracle oinstall 507904 May 14 17:06 1_212_740745127.dbf
-rw-r----- 1 oracle oinstall 220672 May 14 17:14 1_219_740745127.dbf

/oracle/archive/arch2:

total 391464

-rw-r----- 1 oracle oinstall 397999616 May 14 17:05 1_211_740745127.dbf
-rw-r----- 1 oracle oinstall 507904 May 14 17:06 1_212_740745127.dbf
-rw-r----- 1 oracle oinstall 351744 May 14 17:08 1_213_740745127.dbf
-rw-r----- 1 oracle oinstall 332800 May 14 17:08 1_214_740745127.dbf
-rw-r----- 1 oracle oinstall 2560 May 14 17:08 1_215_740745127.dbf
-rw-r----- 1 oracle oinstall 6656 May 14 17:08 1_216_740745127.dbf
-rw-r----- 1 oracle oinstall 628736 May 14 17:11 1_217_740745127.dbf
-rw-r----- 1 oracle oinstall 342528 May 14 17:12 1_218_740745127.dbf
-rw-r----- 1 oracle oinstall 220672 May 14 17:14 1_219_740745127.dbf

本文永久更新链接地址

推荐阅读
author-avatar
冬天的芦苇2011
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有