0
点赞
收藏
分享

微信扫一扫

(13) 吧一吧Oracle的存储方案


案没得说选择RAID 5或6的估计最多,因为它性能和容错方面相对比较平衡。 不过 如果充份考虑到Oracle数据库各个文件的特性 ,可以看看我提的 更为理想化的方案


数据文件

方案

重做日志(REDO)

RAID 0

系统表空间,临时表空间,UNDO表空间

RAID 1或RAID 10

控制文件

RAID 10(即0+1)

其它表空间数据文件

RAID 5或6



关于 RAID的资料可查: ​​http://zh.wikipedia.org/wiki/RAID​​





理由:



  REDO 



非常忙碌,对I/O要求高,加上它本身就分REDO组,就是说有冗余.  所以选择RAID 0这种性能最高的方案。



  系统表空间,临时表空间,UNDO表空间 : 



这几个也非常忙碌,对I/O要求也高,但数据库并没有给它们分组,因此 需要在保住它们的性能外,能有一个备份最好,



所以RAID 1或RAID 10最合适。



 控制文件



它的地位对数据库太重要了,别看它个头不大,管得可多,I/O实际上很高的,这就是为什么很多书上 会说,



最好把控制文件及副本分散在不同副本上的原因。 它本身有冗余,似于RAID 0 比较合适。



但考虑到它的重 要性,还是多做一份镜像吧, 所以RAID 10( 即RAID0 +RAID 1)的方案最能保障性能和安全,因为它



在一块硬盘受损时,不会受影响,但比较耗空间。



  其它数据文件



就丢给 RAID 5或6吧,这两种平衡性比较好。



  



   是不是有点麻烦,对 OLTP应用的话,个人认为算是一个比较理想化的方案,其实大部份情况是SA已经把硬件和系统都弄好,



DBA只要去负责安装数据库就行了。 哈哈。






附上 RAID 说明:



RAID 10是先镜射再分区数据,再将所有硬盘分为两组,视为是RAID 0的最低组合,然后将这两组各自视为RAID 1运作。
RAID 01则是跟RAID 10的程序相反,是先分区再将数据镜射到两组硬盘。它将所有的硬盘分为两组,变成RAID 1的最低组合,而将两组硬盘各自视为RAID 0运作。
当RAID 10有一个硬盘受损,其余硬盘会继续运作。RAID 01只要有一个硬盘受损,同组RAID 0的所有硬盘都会停止运作,只剩下其他组的硬盘运作,可靠性较低。






附上: ​​ASM与存储容灾​​ 




举报

相关推荐

0 条评论