kxbin
          成功留給有準備的人
          posts - 10,  comments - 35,  trackbacks - 0

          a如果你現在沒有作這些的話,用MK VOLFACT.SQL來創建測定體積的表。 

          b收集晚間數據大小的信息,用ANALYZE COMP.SQL 

          c收集統計結果,用POP VOL.SQL 

          d在空閑的時候檢查數據,可能的話,每周或每個月進行。 

          我是用MS EXCELODBC的聯接來檢查數據和圖表的增長 

           

          ==========================================================================================

          三.每周維護過程 

           A.查找被破壞的目標 

           1.對于每個給定表空間的對象來說,NEXT_EXTENT的大小是相同的,如12/14/98,缺省的NEXT_EXTENT          DATAHI1GDATALO500MBINDEXES256MB 

           A檢查NEXT_EXTENT的設置,可用‘NEXTEXT.SQL’。 

           B檢查已有的EXTENTS,可用‘EXISTEXT.SQL’。 

          2.所有的表都應該有唯一的主鍵 

           a查看那些表沒有主鍵,可用‘NO_PK.SQL’。 

           b查找那些主鍵是沒有發揮作用的,可用‘DIS_PK.SQL’。 

           c所有作索引的主鍵都要是唯一的,可用‘NONUPK.SQL’來檢查。 

           

          3.所有的索引都要放到索引表空間中。運行‘MKREBUILD_IDX.SQL 

          4.不同的環境之間的計劃應該是同樣的,特別是測試環境和成品環境之間的計劃應該相同。 

           a檢查不同的2個運行環境中的數據類型是否一致,可用DATATYPE.SQL’。 

           b2個不同的實例中尋找對象的不同點,可用‘OBJ_COORD.SQL’。 

           c更好的做法是,使用一種工具,象尋求軟件的計劃管理器那樣的工具。 

           

          B查看是否有危害到安全策略的問題。 

           

          C查看報錯的SQL*NET日志。 

               1.客戶端的日志。

                2.服務器端的日志。 

           

          D.將所有的警告日志存檔 

           

          E.供應商的主頁 

           

          1. ORACLE供應商 

           http://www.oracle.com 

           http://technet.oracle.com 

           http://www.oracle.com/support 

           http://www.oramag.com 

           

          2. Quest Software 

           http://www.quests.com 

           

          3. Sun Microsystems 

           http://www.sun.com 

           

          ==========================================================================================

          四.月維護過程 

           

          A.查看對數據庫會產生危害的增長速度 

           1.從以前的記錄或報告中回顧段增長的變化以此來確定段增長帶來危害 

          B回顧以前數據庫優化性能的調整 

           1.回顧一般ORACLE數據庫的調整點,比較以前的報告來確定有害的發展趨勢。 

          C查看I/O的屏頸問題 

           1.查看前期數據庫文件的活動性,比較以前的輸出來判斷有可能導致屏頸問題的趨勢。 

          D回顧FRAGMENTATION 

          E計劃數據庫將來的性能 

           1.比較ORACLE和操作系統的CPU,內存,網絡,及硬盤的利用率以此來確定在近期將會有的一些資源爭奪的趨         

           2.當系統將超出范圍時要把性能趨勢當作服務水平的協議來看。 

          F完成調整和維護工作 

           1.使修改滿足避免系統資源的爭奪的需要,這里面包括增加新資源或使預期的停工。 

           

          ==========================================================================================

          五.附錄(維護用程序)

           

          A.日常程序

           0. free.sql 

          --To verify free space in tablespaces 

          --Minimum amount of free space 

          --document your thresholds: 

          --<tablespace_name> = <amount> m 

          SELECT tablespace_name, sum ( blocks ) as free_blk , trunc ( sum ( bytes ) /

          (1024*1024) ) as free_m, max ( bytes ) / (1024) as big_chunk_k, count (*) as num_chunks 

          FROM dba_free_space GROUP BY tablespace_name; 

           

               1. Space.sql 

           -- space.sql 

           -- To check free, pct_free, and allocated space within a tablespace 

           -- 11/24/98 

           SELECT tablespace_name, largest_free_chunk, nr_free_chunks, sum_alloc_blocks, sum_free_blocks 

           , to_char(100*sum_free_blocks/sum_alloc_blocks, '09.99') || '%' AS pct_free 

           FROM ( SELECT tablespace_name , sum(blocks) AS sum_alloc_blocks 

           FROM dba_data_files GROUP BY tablespace_name ) 

           , ( SELECT tablespace_name AS fs_ts_name 

           , max(blocks) AS largest_free_chunk 

           , count(blocks) AS nr_free_chunks 

           , sum(blocks) AS sum_free_blocks FROM dba_free_space 

           GROUP BY tablespace_name ) WHERE tablespace_name = fs_ts_name; 

           

               2. analyze5pct.sql 

           -- analyze5pct.sql 

           -- To analyze tables and indexes quickly, using a 5% sample size 

           -- (do not use this script. if you are performing the overnight collection of volumetric data) 

           -- 11/30/98 

          BEGIN  
          DBMS_UTILITY.ANALYZE_SCHEMA ('&OWNER', 'ESTIMATE',
          NULL, 5) ;  
          END;  

           

                3. nr_extents.sql 

            -- nr_extents.sql 

           -- To find out any object reaching <threshold> 

           -- extents, and manually upgrade it to allow unlimited 

           -- max_extents (thus only objects we *expect* to be big 

           -- are allowed to become big) 

           -- 11/30/98 

           SELECT e.owner, e.segment_type , e.segment_name , count(*) as nr_extents , s.max_extents 

           , to_char ( sum ( e.bytes ) / ( 1024 * 1024 ) , '999,999.90') as MB 

           FROM dba_extents e , dba_segments s 

           WHERE e.segment_name = s.segment_name 

           GROUP BY e.owner, e.segment_type , e.segment_name , s.max_extents 

           HAVING count(*) > &THRESHOLD 

           OR ( ( s.max_extents - count(*) ) < &&THRESHOLD ) 

           ORDER BY count(*) desc; 

           

                4. spacebound.sql 

           -- spacebound.sql 

           -- To identify space-bound objects. If all is well, no rows are returned. 

           -- If any space-bound objects are found, look at value of NEXT extent 

           -- size to figure out what happened. 

           -- Then use coalesce (alter tablespace <foo> coalesce . 

           -- Lastly, add another datafile to the tablespace if needed. 

           -- 11/30/98 

           SELECT a.table_name, a.next_extent, a.tablespace_name 

           FROM all_tables a, 

           ( SELECT tablespace_name, max(bytes) as big_chunk 

           FROM dba_free_space 

           GROUP BY tablespace_name ) f 

           WHERE f.tablespace_name = a.tablespace_name 

           AND a.next_extent > f.big_chunk; 

           

           

          B.每晚處理程序

           

                1. mk_volfact.sql 

           -- mk_volfact.sql (only run this once to set it up; do not run it nightly!) 

           -- -- Table UTL_VOL_FACTS 

           CREATE TABLE utl_vol_facts ( 

           table_name VARCHAR2(30), 

           num_rows NUMBER, 

           meas_dt DATE ) 

           TABLESPACE platab 

           STORAGE ( 

           INITIAL 128k 

           NEXT 128k 

           PCTINCREASE 0 

           MINEXTENTS 1 

           MAXEXTENTS unlimited 

           ) 

           / 

           

          -- Public Synonym 

           CREATE PUBLIC SYNONYM utl_vol_facts FOR &OWNER..utl_vol_facts 

           / 

           

          -- Grants for UTL_VOL_FACTS 

           GRANT SELECT ON utl_vol_facts TO public 

           / 

          posted on 2012-08-29 15:35 kxbin 閱讀(176) 評論(0)  編輯  收藏 所屬分類: ORACLE轉發
          你恨一個人是因為你愛他;你喜歡一個人,是因為他身上有你沒有的;你討厭一個人是因為他身上有你有的東西;你經常在別人面前批評某人,其實潛意識中是想接近他。

          <2025年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          常用鏈接

          留言簿(5)

          隨筆檔案

          文章分類

          文章檔案

          相冊

          收藏夾

          J2EE

          java技術網站

          Linux

          平時常去的網站

          數據庫

          電影網站

          網站設計

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 沙河市| 平定县| 周至县| 新竹县| 石城县| 新乡市| 荆门市| 皋兰县| 乡宁县| 奉化市| 稷山县| 达日县| 苍溪县| 姜堰市| 海伦市| 大兴区| 全州县| 娄烦县| 宜君县| 平湖市| 咸阳市| 临江市| 天等县| 靖州| 沈阳市| 巴青县| 唐河县| 丹阳市| 远安县| 永兴县| 明水县| 桃园县| 陵水| 曲水县| 久治县| 禹州市| 应用必备| 金溪县| 民县| 离岛区| 红安县|