本篇內(nèi)容主要講解“Baseline相關(guān)知識點(diǎn)有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Baseline相關(guān)知識點(diǎn)有哪些”吧!
成都創(chuàng)新互聯(lián)公司專注于企業(yè)營銷型網(wǎng)站建設(shè)、網(wǎng)站重做改版、漳浦網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5頁面制作、商城開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為漳浦等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
在 Oracle Database 11g 中,AWR基線提供了定義動態(tài)和未來基線的強(qiáng)大功能,并在很大程度上簡化了創(chuàng)建和管理性能數(shù)據(jù)(以便比較)的過程。
Oracle Database 11g 默認(rèn)具備一個系統(tǒng)定義的Moving Window Baseline,該基線對應(yīng)于 AWR 保留期中的所有 AWR 數(shù)據(jù)。僅可存在一個Moving Window Baseline。系統(tǒng)定義的Moving Window Baseline認(rèn)大小為當(dāng)前的AWR保留期,即默認(rèn)為八天。
如果要增大Moving Window Baseline,首先需要相應(yīng)增大AWR保留期。AWR保留期和系統(tǒng)定義的Moving Window Baseline的大小是兩個獨(dú)立的參數(shù)。但是AWR保留期必須大于或等于系統(tǒng)定義的Moving Window Baseline的大小。
Oracle Database 11g 提供了收集兩種基線的功能:靜態(tài)基線和Moving Window Baseline。 靜態(tài)基線可以是單一的,也可以是重復(fù)的。單一 AWR 基線是在單一時段內(nèi)收集的。重復(fù)基線是在重復(fù)的時段(例如,六月份的每個星期一)內(nèi)收集的。
在 Oracle Database 11g 中,如果 STATISTICS_LEVEL=TYPICAL 或 ALL,則默認(rèn)啟用基線。
基線視圖
DBA_HIST_BASELINE:顯示有關(guān)系統(tǒng)中所獲取的基線的信息。對于每個基線,該視圖顯示完整的時間范圍,以及該基線是否為默認(rèn)基線。其它信息包括創(chuàng)建日期、上一次統(tǒng)計信息計算的時間和基線類型。
DBA_HIST_BASELINE_DETAILS:顯示可用來確定給定基線有效性的信息,如基線時段期間是否存在關(guān)閉操作及基線時段中由快照數(shù)據(jù)覆蓋的百分比。
DBA_HIST_BASELINE_TEMPLATE:保存了基線模板。該視圖提供了 MMON 所需的信息,用以確定何時根據(jù)模板創(chuàng)建基線,以及何時應(yīng)刪除基線。
DBA_HIST_BASELINE_METADATA:顯示基線的元數(shù)據(jù)信息,包括名稱、類型、創(chuàng)建時間、模板和失效時間。
如果要在過去的某個時段創(chuàng)建基線,則使用 CREATE_BASELINE 過程;如果時段有任何部分處于未來,則使用 CREATE_BASELINE_TEMPLATE 過程。
CREATE_BASELINE
語法:
DBMS_WORKLOAD_REPOSITORY.CREATE_BASELINE( start_snap_id IN NUMBER, end_snap_id IN NUMBER, baseline_name IN VARCHAR2, dbid IN NUMBER DEFAULT NULL, expiration IN NUMBER DEFAULT NULL); DBMS_WORKLOAD_REPOSITORY.CREATE_BASELINE( start_snap_id IN NUMBER, end_snap_id IN NUMBER, baseline_name IN VARCHAR2, dbid IN NUMBER DEFAULT NULL, expiration IN NUMBER DEFAULT NULL) RETURN NUMBER; DBMS_WORKLOAD_REPOSITORY.CREATE_BASELINE( start_time IN DATE, end_time IN DATE, baseline_name IN VARCHAR2, dbid IN NUMBER DEFAULT NULL, expiration IN NUMBER DEFAULT NULL); DBMS_WORKLOAD_REPOSITORY.CREATE_BASELINE( start_time IN DATE, end_time IN DATE, baseline_name IN VARCHAR2, dbid IN NUMBER DEFAULT NULL, expiration IN NUMBER DEFAULT NULL); RETURN NUMBER;
示例:
創(chuàng)建一個名為TEST39,從2013-05-25 10:00:00開始到2013-05-29 11:00:00結(jié)束的,且永遠(yuǎn)不會過期的baseline
BEGIN DBMS_WORKLOAD_REPOSITORY.CREATE_BASELINE ( start_time => '2013-05-25 10:00:00', end_time => '2013-05-29 11:00:00', baseline_name => 'TEST39', expiration => NULL ); END;
查看已經(jīng)創(chuàng)建了哪些baseline
SQL> set line 1000 SQL> col TEMPLATE_NAME for a20 SQL> col BASELINE_NAME for a20 SQL> select DBID,BASELINE_ID,BASELINE_NAME,BASELINE_TYPE,EXPIRATION,TEMPLATE_NAME from dba_hist_baseline;
—————————————————————————————-
刪除基線
先確定已存在的基線名稱,比如是TEST3
BEGIN DBMS_WORKLOAD_REPOSITORY.DROP_BASELINE (baseline_name => 'TEST3', cascade => FALSE, dbid => null); END; /
cascade參數(shù)選擇FALSE,如果選擇TRUE則會將刪除基線相關(guān)的快照
—————————————————————————————-
重命名基線
查看已經(jīng)存在的基線,然后重命名
BEGIN DBMS_WORKLOAD_REPOSITORY.RENAME_BASELINE ( old_baseline_name => 'TEST3', new_baseline_name => 'NTEST3', ); END; /
============================================================
CREATE_BASELINE_TEMPLATE
語法:
Specifies a template for generating a baseline for a single time period in the future. DBMS_WORKLOAD_REPOSITORY.CREATE_BASELINE_TEMPLATE( start_time IN DATE, end_time IN DATE, baseline_name IN VARCHAR2, template_name IN VARCHAR2, expiration IN NUMBER, dbid IN NUMBER DEFAULT NULL); Specifies a template for creating and dropping baseline based on repeating time periods: DBMS_WORKLOAD_REPOSITORY.CREATE_BASELINE_TEMPLATE( day_of_week IN VARCHAR2, hour_in_day IN NUMBER, duration IN NUMBER, start_time IN DATE, end_time IN DATE, baseline_name_prefix IN VARCHAR2, template_name IN VARCHAR2, expiration IN NUMBER, dbid IN NUMBER DEFAULT NULL);
示例:
單一基線模板
先查詢當(dāng)前的時間:
SQL> select sysdate from dual; SYSDATE ------------------- 2013-05-29 15:47:13
BASELINE_TEMPLATE是需要有任何部分包含未發(fā)生的時間才能用的。
為此,我們來特別證明下:
SQL> BEGIN 2 DBMS_WORKLOAD_REPOSITORY.CREATE_BASELINE_TEMPLATE ( 3 start_time => '2013-05-25 10:00:00', 4 end_time => '2013-05-29 15:00:00', 5 baseline_name => 'FALL29', 6 template_name => 'FALL29', 7 expiration => NULL ); 8 END; 9 / BEGIN * 第 1 行出現(xiàn)錯誤: ORA-13537: 為創(chuàng)建基線模板而輸入的內(nèi)容無效 (end_time, end_time is less than SYSDATE) ORA-06512: 在 "SYS.DBMS_WORKLOAD_REPOSITORY", line 768 ORA-06512: 在 "SYS.DBMS_WORKLOAD_REPOSITORY", line 818 ORA-06512: 在 line 2
果然如此,驗證之前說的過去的某時段必須要是使用CREATE_BASELINE,反之包含任何時段的未來則使用 CREATE_BASELINE_TEMPLATE 過程。
SQL> BEGIN 2 DBMS_WORKLOAD_REPOSITORY.CREATE_BASELINE_TEMPLATE ( 3 start_time => '2013-05-25 10:00:00', 4 end_time => '2013-05-29 16:00:00', 5 baseline_name => 'FALL29', 6 template_name => 'FALL29', 7 expiration => NULL ); 8 END; 9 / PL/SQL 過程已成功完成。
重復(fù)基線模板
創(chuàng)建名template_2013_mondays的基線模板:每周一(day_of_week)早上8點(diǎn)開始(hour_in_day)持續(xù)12個小時(duration)且將保留30天(expiration),開始于2013-05-25 10:00:00,結(jié)束于2013-05-30 17:00:00。
SQL> BEGIN 2 DBMS_WORKLOAD_REPOSITORY.CREATE_BASELINE_TEMPLATE ( 3 day_of_week => 'monday', hour_in_day => 8, 4 duration => 12, expiration => 30, 5 start_time => '2013-05-25 10:00:00', 6 end_time => '2013-05-30 17:00:00', 7 baseline_name_prefix => 'baseline_2013_mondays_', 8 template_name => 'template_2013_mondays', 9 dbid => NULL); 10 END; 11 / PL/SQL 過程已成功完成。
查詢有哪些基線模板
SQL> col REPEAT_INTERVAL for a60 SQL> select DBID,TEMPLATE_ID,TEMPLATE_NAME,TEMPLATE_TYPE,DURATION,EXPIRATION,REPEAT_INTERVAL from dba_hist_baseline_template; DBID TEMPLATE_ID TEMPLATE_NAME TEMPLATE_ DURATION EXPIRATION REPEAT_INTERVAL ---------- ----------- -------------------- --------- ---------- ---------- ------------------------------------------------------------ 2197530720 2 FALL08 SINGLE 2197530720 3 FALL09 SINGLE 2197530720 4 FALL19 SINGLE 2197530720 5 FALL29 SINGLE 2197530720 6 template_2013_monday REPEATING 12 30 FREQ=WEEKLY;INTERVAL=1;BYDAY=MON;BYHOUR=8;BYMINUTE=0;BYSECON s D=0
————————————————————————————-
刪除基線模板
查詢已存在的基線模板,確定需要刪除的基線名稱,比如template_2013_monday
BEGIN DBMS_WORKLOAD_REPOSITORY.DROP_BASELINE_TEMPLATE ( template_name => 'template_2013_mondays', dbid => null); END; /
在11gR2中AWR默認(rèn)的配置是保留期為8天,快照每小時生成一次。
SQL> col SNAP_INTERVAL for a20 SQL> col RETENTION for a20 SQL> select * from dba_hist_wr_control; DBID SNAP_INTERVAL RETENTION TOPNSQL ---------- -------------------- -------------------- ---------- 2197530720 +00000 01:00:00.0 +00008 00:00:00.0 DEFAULT
現(xiàn)在想要改變AWR配置滿足系統(tǒng)的需求
SQL> BEGIN 2 DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS( retention => 7200, 3 interval => 30, topnsql => 100); 4 END; 5 / BEGIN * 第 1 行出現(xiàn)錯誤: ORA-13541: 系統(tǒng)移動窗口基線大小 (691200) 大于保留時間 (345600) ORA-06512: 在 "SYS.DBMS_WORKLOAD_REPOSITORY", line 174 ORA-06512: 在 "SYS.DBMS_WORKLOAD_REPOSITORY", line 222 ORA-06512: 在 line 2
出現(xiàn)ORA-13541: system moving window baseline size (691200) greater than retention (518400)錯誤,根據(jù)錯誤提示,系統(tǒng)移動窗口基線(Moving Window Baseline)是691200,即是8天。也就是說修改AWR保留期的值,跟此數(shù)值有關(guān)系,必須要大于此數(shù)值。
查看當(dāng)前Moving Window Baseline的值
SQL> col BASELINE_NAME for a30 SQL> select dbid, baseline_name, baseline_type, moving_window_size from dba_hist_baseline; DBID BASELINE_NAME BASELINE_TYPE MOVING_WINDOW_SIZE ---------- ------------------------------ ------------- ------------------ 2197530720 SYSTEM_MOVING_WINDOW MOVING_WINDOW 8
既然知道了原因,解決就很方便了,Modifying the Window Size of the Default Moving Window Baseline
BEGIN DBMS_WORKLOAD_REPOSITORY.MODIFY_BASELINE_WINDOW_SIZE ( window_size => 5, dbid => 3310949047); END; /
其中要注意:window size必須設(shè)置為一個小于或等于AWR設(shè)置的保留值。
In this example, the optional dbid parameter specifies the database identifier is 3310949047. If you do not specify a value for dbid, then the local database identifier is used as the default value.
檢查當(dāng)前Moving Window Baseline的值,看是否修改的如你所愿
SQL> select dbid, baseline_name, baseline_type, moving_window_size from dba_hist_baseline; DBID BASELINE_NAME BASELINE_TYPE MOVING_WINDOW_SIZE ---------- ------------------------------ ------------- ------------------ 2197530720 SYSTEM_MOVING_WINDOW MOVING_WINDOW 5
繼續(xù)之前的修改
SQL> BEGIN 2 DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS( retention => 7200, 3 interval => 30, topnsql => 100); 4 END; 5 / PL/SQL 過程已成功完成。
修改完后查看當(dāng)前AWR配置
SQL> select * from dba_hist_wr_control; DBID SNAP_INTERVAL RETENTION TOPNSQL ---------- -------------------- -------------------- ---------- 2197530720 +00000 00:30:00.0 +00005 00:00:00.0 100
到此問題已解決。
到此,相信大家對“Baseline相關(guān)知識點(diǎn)有哪些”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
網(wǎng)站標(biāo)題:Baseline相關(guān)知識點(diǎn)有哪些
當(dāng)前網(wǎng)址:http://jinyejixie.com/article48/jjgcep.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、品牌網(wǎng)站設(shè)計、網(wǎng)站改版、移動網(wǎng)站建設(shè)、網(wǎng)站設(shè)計公司、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)