午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術(shù)文章
文章詳情頁

Oracle性能優(yōu)化之Rollback Segment優(yōu)化

瀏覽:12日期:2023-11-11 19:49:30

1、概念

Transaction以輪循的方式使用rollback segment里的extent,當(dāng)前所在的extent滿時(shí)就移動到下一個(gè)extent??赡苡卸鄠€(gè)transaction同時(shí)向同一個(gè)extent寫數(shù)據(jù),但一個(gè)rollback segment block中只能保存一個(gè)transaction的數(shù)據(jù)。

Oracle 在每個(gè)Rollback segment header中保存了一個(gè)transaction table,包括了每個(gè)rollback segment中包含的事務(wù)信息,rollback segment header的活動控制了向rollbak segment寫入被修改的數(shù)據(jù)。rollback segment header是經(jīng)常被修改的數(shù)據(jù)庫塊,因此它應(yīng)該被長時(shí)間留在buffer cache中,為了避免在transaction table產(chǎn)生競爭導(dǎo)致性能下降,應(yīng)有多個(gè)rollback segment或應(yīng)盡量使用oracle server 自動管理的rollback segment。

2、診斷rollback segment header的競爭

如果rollback segment 由手工管理,下列措施診斷rollback segment header的競爭

SELECT class,count FROM v$waitstat WHERE class LIKE '%undo%' ;

SELECT Sum(Value) sum FROM v$sysstat WHERE NAME IN ('db block gets','consistent gets');

任何類型的等待次數(shù)(count)與總請求數(shù)(sum)的比率,不能超過1%?;騭elect sum(waits)*100/sum(gets) "Ratio", sum(waits) "Waits", sum(gets) "Gets" from v$rollstat;

waits的匯總數(shù)與gets的匯總數(shù)的比率應(yīng)低于1%,如果超過1%,應(yīng)創(chuàng)建更多的rollback segment。

下列字段數(shù)值如果大于0,則表明在rollback segment header上存在競爭:

A、v$rollstat 中的waits

B、v$waitstat中的undo header行

C、v$system_event中的undo segment tx slot事件

3、消耗更少的rollback segment

1)如果是刪除表里所有的數(shù)據(jù),盡可能使用trauncate而不是delete。

2)在應(yīng)用中允許用戶有規(guī)律的提交,盡可能不用長事務(wù)。

3)• Import– Set COMMIT = Y– Size the set of rows with BUFFER• Export: Set CONSISTENT=N• SQL*Loader: Set the COMMIT intervals with ROWS

4、小回滾段可能出現(xiàn)的問題

A、事務(wù)由于缺少回滾空間失敗

B、由于下列原因?qū)е碌?ldquo;Snapshot too old問題:

Block里的事務(wù)列表被刷新,block里的SCN比列表Interested Transaction List(ITL)里起始事務(wù)的SCN更新;

Rollback segment header里的Transaction slot被重用;

回滾數(shù)據(jù)已經(jīng)被重寫;

5、9i的自動回滾管理

Undo_managment指定了回滾空間的管理方式:Auto:自動管理;Manual:手工管理回滾段。

Undo_retention指定了回滾數(shù)據(jù)的保留期限;

Undo_tablespace指定了被使用的回滾表空間;

Oracle自動管理的表空間可以在常見數(shù)據(jù)庫的時(shí)候創(chuàng)建,也可以單獨(dú)建立?;貪L表空間可以相互轉(zhuǎn)換(switch),但在某一時(shí)刻只能有一個(gè)回滾表空間處于活動狀態(tài)。回滾表空間處于非活動狀態(tài)時(shí)可以刪除,如果有對處于被刪除回滾表空間里的已提交事務(wù)的查詢時(shí),oracle會返回一個(gè)錯(cuò)誤。

估計(jì)undo tablespace大小的公式:

Undo space = (undo_retention * (undo blocks per second * db_block_size)) + db_block_size;

可以使用下列的sql設(shè)定undo_retention和undo tablespace:

select (rd*(ups*overhead)+overhead) "bytes" from (select value rd from v$parameter where name ='undo_retention'),(select (sum(undoblks)/sum(((end_time-begin_time)*10800))) ups from v$undostat),(select value overhead from v$parameter where name='db_block_size');

其中:

Rd:undo_retention設(shè)置的時(shí)間;

Ups:undo blocks per second;

Overhead:rollback segment header;

標(biāo)簽: Oracle 數(shù)據(jù)庫
相關(guān)文章:
主站蜘蛛池模板: 天天综合网在线 | 99久精品| 久久综合社区 | 日韩在线观看免 | 婷婷丁香在线 | 日本www在线 | 日韩成人免费视频 | 日日舔夜夜操 | 日韩午夜av | 青青草华人在线视频 | 日本黄色三级视频 | 国产精品福利小视频 | 亚洲天堂成人 | 久久久噜噜噜久久久 | 男人的天堂a在线 | a级片在线观看免费 | 超碰人操 | 神马影院午夜伦理 | 精品久久久一区 | 成人一区二区三区视频 | 最新国产精品自拍 | 男人天堂综合 | 99热免费 | 国产精品suv一区二区 | 久久久久婷婷 | 国产1区2区3区 | 人人澡超碰碰97碰碰碰 | 午夜免费在线 | 国产精品乱码一区二区视频 | 成人福利在线观看 | 国产成人精品av | 日本性高潮视频 | 一区二区三区国产视频 | 一区二区在线视频播放 | 正在播放一区二区 | 中国精品毛片 | 亚洲成人网在线 | 国产男女在线 | 成人高清在线 | 深夜视频在线播放 | 久久精品久 |