




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、DB2DB2 日常維護手冊日常維護手冊第 2 頁 共 14 頁目錄DB2DB2 維護手冊維護手冊.1一、一、DB2 日常維護日操作日常維護日操作.31、檢查管理服務器是否啟動.32、檢查 DB2 實例是否已經啟動.33、查看表空間狀態是否正常.34、查看表的狀態.45、查看磁盤空間.46、檢查存儲管理軟件是否正常.47、檢查數據庫備份是否正常.58、檢查歸檔日志是否正確歸檔了 .59、查看緩沖池的命中率.510、查看當前運行最頻繁的 SQL,其命中率是否正常.511、查看當前連接的應用程序,有沒有非法連接.512、檢查有沒有死鎖 .613、對表和索引進行RUNSTATS.614、檢查表是否需要
2、重組.615、對需要重組的表進行重組 .7二、二、DB2 日常維護月操作日常維護月操作.71、查看 DB2 日志.72、檢查備份和日志是否都保存好了.7三、三、DB2 日常維護季度操作日常維護季度操作.71、通過快照監控器,查看系統性能如何.72、數據庫補丁級別 .8四、四、注意事項注意事項 .81、不要刪除活動日志文件 .82、注意交易日志存儲空間 .83、按照系統的實際工作量配置日志空間.84、設置正確數據庫代碼頁 .95、檢查許可證(LICENSE)安裝情況.96、創建數據庫前調整好系統時間 .97、不要隨便執行 CHOWN (CHMOD) R (UNIX/LINUX).98、在歸檔日志
3、模式下使用 LOAD 記得加 NONRECOVERABLE 參數.9五、五、附:以脫機方式重組表附:以脫機方式重組表.9六、六、附:索引重組附:索引重組.10七、七、附:收集和更新統計信息的準則附:收集和更新統計信息的準則.11八、八、附:使用附:使用 CLP 捕獲數據庫運行狀況快照捕獲數據庫運行狀況快照.13第 3 頁 共 14 頁一、一、 DB2 日常維護日操作日常維護日操作1、檢查管理服務器是否啟動用 ps 命令查看是否有 dasusr1 后臺進程 ps -ef | dasusr1請確保管理服務器已經啟動,如果沒有啟動,則按以下步驟啟動管理服務器:以管理服務器用戶(UNIX 默認是 DA
4、SUSR1)登錄發出 db2admin start 命令如果是 HA 環境,則要保證在腳本中正確配置了啟動命令2、檢查 DB2 實例是否已經啟動用 ps 命令查看是否有 db2sysc 后臺進程ps -ef | db2sysc也可以以 DB2 實例所有者登錄,通過發出 db2start 命令來確保啟動了實例(如果實例已經啟動,則會告知 SQL1026N 數據庫管理器已激活;否則,將把實例啟動起來)3、查看表空間狀態是否正常以 db2 實例所有者登錄#db2 list tablespaces show detail /在單分區上查看表空間的狀態,正常返回 0 x0000# db2_all lis
5、t tablespaces show detail /在所有分區上查看表空間的狀態可以使用 LIST TABLESPACES 命令確定連接數據庫中表空間的當前狀態,可以使用 SHOW DETAIL 選項查看表空間的詳細信息。比如,我們連上 SAMPLE數據庫,執行 list tablespaces show detail ,可以看到狀態返回值是 0 x0000,此時,使用 db2tbst 可以查看狀態編號對于的狀態含義,具體語法如下:db2tbst 可以查看編號所代表的狀態db2tbst 命令接收十六進制的狀態值,并返回相應的表空間狀態。例如,命令 第 4 頁 共 14 頁db2tbst 0
6、x0008 返回 State = Load Pending 。而該十六進制的狀態值反過來又是 LIST TABLESPACES 命令輸出的組成部分。表空間的外部可見狀態是由單個狀態值的十六進制總和構成的。例如,如果表空間的狀態是 Backup Pending 和 Load in Progress,那么所返回的十六進制值就是 0 x20020(0 x00020 + 0 x20000)4、查看表的狀態查詢系統目錄視圖以獲得關于數據庫的有用信息。例如,下面的語句使用 NOT LIKE 斷言,返回在 SYSCAT.TABLES 中有項的所有用戶定義的表的名稱,以及每個表的列數和表的狀態(N = 正常;
7、C = 待審核(check pending)#db2 select tabname, colcount, status FROM syscat.tables WHERE tabschema NOT LIKE SYS% ORDER BY tabname也可以使用 load query 命令查看單個表的狀態,比如對表 TEST1,我們可以發出如下命令:#db2 load query table test15、查看磁盤空間查看數據庫活動日志目錄是否已滿,活動日志目錄可以使用 get db cfg 查看,注意一定不要手工刪除活動日志#df -k查看 SMS 表空間對應的容器目錄空間是否滿了#df -k
8、查看 DMS 表空間中是否還有可用頁#db2 list tablespaces show detail /在單分區上查看表空間的是否還有可用頁# db2_all list tablespaces show detail /在所有分區上查看表空間是否還有可用頁6、檢查存儲管理軟件是否正常請檢查 TSM 或其他存儲管理軟件是否正常,以及磁帶機是否運行正常。第 5 頁 共 14 頁7、檢查數據庫備份是否正常請查看 TSM 或第三方存儲管理軟件,看備份映像文件是否完整的保存到了磁帶機上了,想在 DB2 上查看備份情況,可以使用 LIST 命令# db2 list history backup all
9、for 數據庫名8、檢查歸檔日志是否正確歸檔了請確保活動日志目錄下沒有的日志文件都已經正確歸檔到了帶機上(查看TSM 或第三方存儲管理軟件)。查看活動目錄里的日志文件:#ls -l9、查看緩沖池的命中率# db2 get snapshot for bufferpools on 數據庫名查看緩沖池的命中率,看其是否低于 95%(命中率越高越好)10、 查看當前運行最頻繁的 SQL,其命中率是否正常# db2 get snapshot for bufferpools on 數據庫名 log.txt用 grep 命令查看 Number of executions執行次數最頻繁的語句,看其命中率是否正
10、常。比如:grep -n Number of executions snap.out | grep -v = 0 | sort -k 5,5rn | more 11、 查看當前連接的應用程序,有沒有非法連接#db2 list applications show detail 第 6 頁 共 14 頁看這些連接的情況,看有沒有不合適的 IP 連上來,或者不被允許的第三方工具連上來,比如一些第三方工具連上來會對表進行鎖定,影響業務系統正常運行,這個時候可以用 FORCE APPLICATIONS (應用程序句柄)停下來。12、 檢查有沒有死鎖# db2 get snapshot for all o
11、n 數據庫名 log.txt用 grep 命令查看輸出的文件中是否有死鎖的記錄,比如grep -n Deadlocks detected log.txt | grep -v = 0 | more 13、 對表和索引進行 runstats#db2 runstats on table 表名 and index all對系統表以及變化比較頻繁的表運行統計信息,建議寫成 shell 腳本自動運行。14、 檢查表是否需要重組使用 REORGCHK 命令,通過統計數據檢查表是否需要重組,語法如下:REORGCHK UPDATE | CURRENT STATISTICS ON TABLE SYSTEM| T
12、ABLE USER | TABLE ALL | TABLE table_name | SCHEMA schema_nameUPDATE STATISTICS: 更新表的統計數據,根據該統計數據判斷是否需要重組表CURRENT STATISTICS:根據當前表統計數據判斷是否需要重組表TABLE table_name : 對單個表進行分析TABLE ALL: 對數據庫所有的表進行分析TABLE SYSTEM: 對系統表進行分析TABLE USER : 對當前用戶模式下的所有表進行分析#db2 reorgchk update statistics on table all第 7 頁 共 14 頁1
13、5、 對需要重組的表進行重組#db2 reorg table 表名 /通過重構行來消除“碎片”數據#db2 reorg indexes all for table 表名 /只重組索引比如:reorg table index by_id將根據索引 by_id,如果不加 INDEX 選項將重組表和所有的索引reorg table index by_id use tempspace1使用指定的臨時表空間重組表表重組完成后需要進行 RUNSTATS。另外,記住在分區數據庫環境中,如果想在所有節點運行命令,需要使用 db2_all 命令。二、二、 DB
14、2 日常維護月操作日常維護月操作1、查看 DB2 日志請至少每月查看一次 db2diag.log 文件,看其中是否有異常。2、檢查備份和日志是否都保存好了通過 TSM 或第三方存儲管理軟件,查看備份和歸檔日志是否都保存好了,在數據庫級別查看備份,可以使用:# db2 list history backup all for 數據庫名三、三、 DB2 日常維護季度操作日常維護季度操作1、通過快照監控器,查看系統性能如何通過快照監控器,抓取數據庫的信息,分析數據庫性能是否合理:# db2 get snapshot for all on 數據庫名 log.txt第 8 頁 共 14 頁2、數據庫補丁級
15、別# db2level四、四、 注意事項注意事項1、不要刪除活動日志文件DB2 的活動日志文件不能被刪除。一旦 DB2 的活動日志文件被刪除,或者所在的存儲設備出現問題,則不可避免地造成 DB2 數據庫系統宕機。2、注意交易日志存儲空間在歸檔日志模式下,如果沒有使用自動歸檔方式,則存儲的日志文件會不斷增多,有可能造成日志所在的文件系統空間滿。 當這種情況發生時,會根據參數 BLK_LOG_DSK_FUL 的配置而有不同的現象:1)如果該參數啟用,則 DB2 數據庫可繼續讀操作,但是寫操作會掛起2)如果該參數沒有啟用,則 DB2 數據庫會停止工作兩種情況下,都需要到日志所在的文件系統添加了空間才
16、恢復正常。3、按照系統的實際工作量配置日志空間DB2數據庫通過日志文件維護數據的完整性和一致性。DB2 數據庫的日志空間可通過如下公式計算:日志空間 = (主日志文件 + 二級日志文件) * 日志文件尺寸 其中:1)主日志文件由參數 LOGPRIMARY 控制,2)二級日志文件由參數 LOGSECOND 控制3)日志文件尺寸由參數 LOGFILSIZ 控制4)LOGPRIMARY + LOGSECOND 256 (不同的 DB2 版本略有不同,請參看相同版本的 DB2 手冊確認)第 9 頁 共 14 頁4、設置正確數據庫代碼頁由于數據庫的代碼頁在數據庫創建之后是無法修改的,所以在創建數據庫時一
17、定要選擇正確的代碼頁。錯誤的數據庫代碼頁會造成 JDBC/ODBC 訪問時中文字段被截斷(包括控制中心) ,這種情況需要重建數據庫以修改數據庫代碼頁。從全局規劃來說,如果應用需要訪問多個數據庫,那么這多個數據庫的代碼頁應該是一致的。5、檢查許可證(License)安裝情況許可證過期會造成不必要的服務中斷,所以在 DB2 安裝完畢后,建議檢察許可的安裝情況6、創建數據庫前調整好系統時間在數據庫創建好之后,調整系統時間會造成數據庫內部時間戳的異常。數據庫中一些對象和時間相關,一旦時間不準確要調整需要很小心。錯誤的時間調整可能會造成很多問題,如:1)某些對象失效,例如 :SQL0440N,找不到具有
18、兼容自變量的類型為 “” 的名為 “” 的已授權例程2)數據庫日志邏輯錯誤 - 宕機3)常見錯誤 只調整時間,未調整時區7、 不要隨便執行 chown (chmod) R (UNIX/Linux)在實例目錄下 chown (chmod) -R 會造成1)在數據庫服務器上 db2 connect to 能連接上數據庫2)db2 connect to user . using .連接不上8、在歸檔日志模式下使用 LOAD 記得加 NONRECOVERABLE 參數第 10 頁 共 14 頁五、五、 附:附:以脫機方式重組表以脫機方式重組表以脫機方式重組表是整理表碎片的最快方法。重組可減少表所需的空
19、間量并提高數據訪問和查詢性能。必須具有 SYSADM、SYSCTRL、SYSMAINT 或 DBADM 權限,或者必須具有對表的 CONTROL 權限才能重組表。必須具有數據庫連接才能重組表。標識需要重組的表之后,可以對這些表運行 REORG 實用程序,并且可以選擇對在這些表上定義的任何索引運行該實用程序。1. 要使用 CLP 重組表,請發出 REORG TABLE 命令: db2 reorg table test.employee要使用臨時表空間 mytemp 重組表,請輸入:db2 reorg table test.employee use mytemp要重組表并根據索引 myindex
20、對行進行重新排序,請輸入:db2 reorg table test.employee index myindex2. 要使用 SQL 調用語句重組表,請使用 ADMIN_CMD 過程發出 REORG TABLE 命令: call sysproc.admin_cmd (reorg table employee index myindex)3. 要使用 DB2 管理 API 重組表,請使用 db2REORG API。 在重組表之后,應收集有關表的統計信息,以便優化器具有最準確的數據來評估查詢訪問方案。六、六、 附:索引重組附:索引重組通過刪除和插入操作對表進行更新后,索引的性能會降低,其表現方式如
21、下: 葉子頁分段 葉子頁被分段之后,由于必須讀取更多的葉子頁才能訪存表頁,因此 I/O 操作成本會增加。物理索引頁的順序不再與這些頁上的鍵順序相匹配(此稱為不良集群索引) 。 葉子頁出現不良集群情況后,順序預取操作的效率將降低,因此會導致更多的 I/O 等待。形成的索引大于其最有效的級別數。 在此情況下應重組索引。如果在創建索引時設置了 MINPCTUSED 參數,則在刪除某個鍵且可用空間小于指定的百分比時,數據庫服務器會自動合并索引葉子頁。此過程稱為聯機索引整理碎片。但是,要復原索引集群和可用空間以及降低葉級別,請使用下列其中一種方法: 刪除并重新創建索引。 使用 REORG INDEXES
22、 命令聯機重組索引。 因為此方法允許用戶在重建表索引期間對表進行讀寫操作,所以在生產環境中可能需要選擇此方法。使用允許脫機重組表及其索引的選項運行 REORG TABLE 命令。 第 11 頁 共 14 頁聯機索引重組聯機索引重組在使用 ALLOW WRITE ACCESS 選項運行 REORG INDEXES 命令時,如果同時允許對指定的表進行讀寫訪問,則會重建該表的所有索引。進行重組時,對基礎表所作的任何將會影響到索引的更改都將記錄在 DB2 日志中。另外,如果有任何內部內存緩沖區空間可供使用,則還將這些更改放在這樣的內存空間中。重組將處理所記錄的更改以便在重建索引時與當前寫活動保持同步更
23、新。內部內存緩沖區空間是根據需要從實用程序堆中分配的指定內存區域,它用來存儲對正在創建或重組的索引所作的更改。使用內存緩沖區空間使索引重組操作能夠通過這樣的方式來處理更改,即先直接從內存讀取,然后讀取日志(如有必要) ,但讀取日志的時間要晚得多。在重組操作完成后,將釋放所分配的內存。重組完成后,重建的索引可能不是最佳集群的索引。如果為索引指定 PCTFREE,則在重組期間,每頁上均會保留相應百分比的空間。對于分區表,支持對各個索引進行聯機索引重組和清除。要對各個索引進行重組,指定索引名:REORG INDEX index_name for TABLE table_name對于空間索引或多維集群
24、(MDC)表,不支持采用 ALLOW WRITE 方式的聯機索引重組。注:注: REORG INDEXES 命令的 CLEANUP ONLY 選項不能完全重組索引。CLEANUP ONLY ALL 選項將除去那些標記為“刪除”且被認為要落實的鍵。此外,它還將釋放所有標記為“刪除”且被認為要落實的鍵所在的頁。在釋放頁后,相鄰的葉子頁將會合并,前提是這樣做可以在合并頁上至少留出 PCTFREE 可用空間。PCTFREE 是指在創建索引時為其定義的可用空間百分比。CLEANUP ONLY PAGES 選項僅刪除那些標記為“刪除”且被認為要落實的所有鍵所在的頁。 使用 CLEANUP ONLY 選項對
25、分區表的索引進行重組時,支持任何訪問級別。如果未指定 CLEANUP ONLY 選項,則缺省訪問級別 ALLOW NO ACCESS 是唯一支持的訪問級別。REORG INDEXES 具有下列要求: 對索引和表具有 SYSADM、SYSMAINT、SYSCTRL 或 DBADM 權限,或者具有 CONTROL 特權。 用于存儲索引的表空間的可用空間數量等于索引的當前大小 在發出 CREATE TABLE 語句時,考慮在大型表空間中重組索引。其他日志空間 REORG INDEXES 需要記錄其活動。因此,重組可能會失敗,尤其是在系統繁忙和記錄其他并發活動時。注:注: 如果具有 ALLOW NO
26、ACCESS 選項的 REORG INDEXES ALL 命令運行失敗,則會標記索引無效并且此項操作不可撤銷。但是,如果具有 ALLOW READ ACCESS 選項的 REORG 命令或具有 ALLOW WRITE ACCESS 選項的 REORG 命令運行失敗,則可以復原原來的索引對象。七、七、 附:收集和更新統計信息的準則附:收集和更新統計信息的準則第 12 頁 共 14 頁RUNSTATS 命令收集表、索引和統計信息視圖的統計信息,以為優化器提供準確信息進行訪問方案選擇。在下列情況下,使用 RUNSTATS 實用程序來收集統計信息:當數據已裝入表中且已創建適當的索引時。 當在表中創建新
27、的索引時。如果自從上次在表中運行 RUNSTATS 以來尚未修改表,則只需要對新的索引執行 RUNSTATS。 當一個表已用 REORG 實用程序重組時。 當通過數據修改、刪除和插入已大量更新表及其索引時。 (此處所指的“大量”可能表示有 10% 到 20% 的表和索引數據受影響。 ) 在綁定性能非常重要的應用程序之前 當您想要比較當前和先前統計信息時。如果定期更新統計信息,則可以及早發現性能問題。 當預取量更改時。 當使用了 REDISTRIBUTE DATABASE PARTITION GROUP 實用程序時。 注注:在先前版本的 DB2 中,此命令使用了 NODEGROUP 關鍵字,而不
28、是 DATABASE PARTITION GROUP 關鍵字。使用 RUNSTATS 實用程序來收集關于 XML 列的統計信息。 使用 RUNSTATS 僅收集 XML 列的統計信息時,將保留 LOAD 或上一次執行 RUNSTATS 實用程序已收集的非 XML 列的現有統計信息。如果先前已收集關于一些 XML 列的統計信息,則在當前命令未收集關于該 XML 列的統計信息時,將刪除先前收集的 XML 列的統計信息;在當前命令收集了關于該 XML 列的統計信息時,將替換先前收集的 XML 列的統計信息。要提高 RUNSTATS 性能并保存用來存儲統計信息的磁盤空間,考慮僅指定應該收集其數據分布統
29、計信息的列。理論上,您應在運行統計信息之后重新綁定應用程序。如果查詢優化器具有新的統計信息,則它可以選擇不同的訪問方案。如果您沒有足夠的時間一次收集全部的統計信息,則可以運行 RUNSTATS 來每次僅更新幾個表、索引或統計信息視圖的統計信息,并輪流完成該組對象。如果對選擇性部分更新運行 RUNSTATS 期間由于表上的活動而產生了不一致性,則在查詢優化期間將發出警告消息(SQL0437W,原因碼 6) 。例如,如果執行 RUNSTATS 來收集表分布統計信息,以及在某個表活動后,再次執行 RUNSTATS 來收集該表的索引統計信息,則可能發生這種情況。如果由于表上的活動產生了不一致并且在查詢
30、優化期間檢測到這些不一致,則發出該警告消息。當發生這種情況時,應再次運行 RUNSTATS 來更新分布統計信息。要確保索引統計信息和表同步,執行 RUNSTATS 來同時收集表和索引統計信息。索引統計信息保留自上次運行 RUNSTATS 以來收集的大部分表和列的統計信息。如果自上次收集該表的統計信息以來已對該表做了大量修改,則只收集該表的索引統計信息將使兩組統計信息不能在所有節點上都同步。對生產系統調用 RUNSTATS 可能會對生產工作負載的性能產生負面影響。RUNSTATS 實用程序現在支持調速選項,在執行較高級別的數據庫活動期間,第 13 頁 共 14 頁可以使用調速選項來限制執行 RU
31、NSTATS 的性能影響。在分區數據庫環境中收集表的統計信息時,RUNSTATS 僅收集執行該命令的數據庫分區上的表的統計信息。將此數據庫分區的 RUNSTATS 結果推廣到其他數據庫分區。如果執行 RUNSTATS 的數據庫分區不包含特定表的一部分,則將請求發送到數據庫分區組中包含該表一部分的第一個數據庫分區。收集統計信息視圖的統計信息時,將收集所有包含該視圖引用的基本表的數據庫分區的統計信息。考慮以下技巧來提高 RUNSTATS 的效率和已收集的統計信息的有效性:僅對用來連接表的列或 WHERE、GROUP BY 以及查詢的類似子句中的列收集統計信息。如果對這些列建立了索引,則可以用 RUNSTATS 命令的 ONLY ON KEY COLUMNS 子句指定列。 為特定表和表中特定列定制 num_freqvalues 和 num_quantiles 的值。 使用 SAMPLE DETAILED 子句收集 DETAILED 索引統計信息,以減少對詳細的索引統計信息執行的后臺計算量。SAMPLE DETAILED 子句減少收集統計信息所需要的時間,并在大多數情況下產生足夠的精度。 當創建已填寫的表的索引時,添加 COLLECT STATISTICS 子句來在創建索引時創建統計信息。 當添加或除去了大量表行時,或如果更新了
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 綠狐尾藻對污水凈化效果及其吸收動力學特征研究
- 科技倫理治理視域下維貝克道德物化思想研究
- 基于ALBERT的命名實體識別方法研究
- 跨文化視角下的泰國中文課堂管理策略研究
- 2024年山東省統計局錄用公務員考試筆試真題
- 水務行業對外合作的成功經驗計劃
- 倉儲管理合同協議書
- 制訂辦學合作協議書
- 全職兒女就業協議書
- 公司開車出差協議書
- 2024年中國家具電商行業市場競爭格局及投資方向研究報告(智研咨詢)
- 導數(30題)-2024年考前15天高考數學沖刺大題訓練(新高考)含答案
- 高層建筑一棟一冊消防安全檔案
- 創造性思維與創新方法智慧樹知到期末考試答案章節答案2024年大連理工大學
- 外科圍手術期營養支持療法
- 廣東省深圳市南山區2023-2024學年四年級下學期期末科學試題
- 2024年江蘇省高考化學試卷(含答案)
- 2024年安徽省初中(八年級)學業水平考試初二會考地理試卷真題
- 小學二年級數學100以內三數加減混合運算綜合測驗試題大全附答案
- 中國特色社會主義期中測試題-2023-2024學年中職高教版
- 學習康復科常見物理治療法課件
評論
0/150
提交評論