ORACLE性能优化救生指南_21章 重做和归档的优化
生活随笔
收集整理的這篇文章主要介紹了
ORACLE性能优化救生指南_21章 重做和归档的优化
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
(讀書筆記)
一般的做法是,把重做日志、閃回日志和歸檔日志與數(shù)據(jù)庫文件分開。
這些文件的上的IO類型,與數(shù)據(jù)文件的IO在性質(zhì)上完全不同,備份與歸檔期間產(chǎn)生的突發(fā)IO可能會(huì)干擾
進(jìn)行中的數(shù)據(jù)文件IO。
有兩種常見的方式用來配置重做日志、歸檔日志與閃回日志:
1.在兩個(gè)磁盤卷上交替存放重做日志文。且把歸檔日志放到一個(gè)獨(dú)立的卷上。
2.把所有的這些文件放在一個(gè)單獨(dú)的位置,例如:使用一個(gè)單獨(dú)的做了條帶化的卷存放所有的非數(shù)據(jù)文件。
或至少存放歸檔日志與閃回日志
21.5.3 對(duì)重做日志使用RAID 5 大聲說NO
RAID5 絕對(duì)不該用于存放重做日志。RAID5 的寫缺陷獎(jiǎng)嚴(yán)重制約數(shù)據(jù)庫的事務(wù)能力。
給數(shù)據(jù)庫文件使用RAID5是有問題的。但給重做日志使用RAID5 則幾乎肯定是一個(gè)壞主意。
因?yàn)橹刈鋈罩久嫦虺掷m(xù)的寫行為,且因?yàn)橛蛇@些寫帶來的延時(shí)通常是數(shù)據(jù)庫處理的一個(gè)限制因素。
RAID5的寫缺陷總是不可接受的。建議使用交替的磁盤設(shè)置。而不是把它他們組成RAID5
21.5 重做日志
重做日志的最佳大小取決于事務(wù)速率。合理設(shè)置日志文件的大小以便日志切換不會(huì)發(fā)生
得太快。512Mb--1G的日志文件大小是很普通的,配置1-20個(gè)日志文件也很平常。
這個(gè)查詢報(bào)告了24小時(shí)的日志切換之間的平均,最大,最小次數(shù)。
平均時(shí)間在5分鐘以下,那要考慮增加日志文件的大小。
WITH log_history AS
?????? (SELECT thread#, first_time,
?????????????? LAG(first_time) OVER (ORDER BY thread#, sequence#)
????????????????? last_first_time,
?????????????? (first_time
??????????????? - LAG(first_time) OVER (ORDER BY thread#, sequence#))
??????????????????? * 24* 60?? last_log_time_minutes,
?????????????? LAG(thread#) OVER (ORDER BY thread#, sequence#)
?????????????????? last_thread#
??????? FROM v$log_history)
SELECT ROUND(MIN(last_log_time_minutes), 2) min_minutes,
?????? ROUND(MAX(last_log_time_minutes), 2) max_minutes,
?????? ROUND(AVG(last_log_time_minutes), 2) avg_minutes
FROM log_history
WHERE???? last_first_time IS NOT NULL
????? AND last_thread# = thread#
????? AND first_time > SYSDATE - 1;
21.6 閃回日志
把閃回日志和重做日志或歸檔日志放在相同的磁盤設(shè)備上(flash_recovery_area),
可能會(huì)引起急用。如遇此問題可考慮把閃回日志放在專門的磁盤卷上。
閃回IO操作通常是很小的,因此推薦使用細(xì)粒條帶化策略。下面的查詢顯示閃回寫進(jìn)程的平均IO大小:
select (small_write_megabytes + large_write_megabytes) as total_write_mb,
?? ??? ?(small_write_reqs + large_write_reqs) as total_write_reqs,
?? ??? ?case when (small_write_reqs + large_write_reqs)=0 then 0 else
????? round( (small_write_megabytes + large_write_megabytes)*1024/
?? ??? ??? ??? ?(small_write_reqs + large_write_reqs),2)? end as avg_write_kb
from v$iostat_file F
where filetype_name='Flashback Log';
總結(jié)
以上是生活随笔為你收集整理的ORACLE性能优化救生指南_21章 重做和归档的优化的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 发生TM锁争用的情况
- 下一篇: Golden Gate 与 Oracle