(Les13 性能管理)[20180411]

来源:https://www.cnblogs.com/also-brook/archive/2018/04/11/8795638.html
-Advertisement-
Play Games

目標 使用Oracle Enterprise Manager監視性能 使用自動記憶體管理(AMM) 使用記憶體指導調整記憶體緩衝區的大小 查看與性能相關的動態視圖 排除無效和不可用對象產生的故障 性能監視 管理記憶體組件 自動記憶體管理(AMM):指定分配給實例的總記憶體(包括SGA和PGA) 自動共用記憶體管理 ...


目標     使用Oracle Enterprise Manager監視性能     使用自動記憶體管理(AMM)     使用記憶體指導調整記憶體緩衝區的大小     查看與性能相關的動態視圖     排除無效和不可用對象產生的故障   性能監視        管理記憶體組件     自動記憶體管理(AMM):指定分配給實例的總記憶體(包括SGA和PGA)     自動共用記憶體管理(ASMM)         通過一個初始化參數指定SGA總記憶體         Oracle伺服器可以管理分配給共用池,Java池,緩衝區高速緩存,流池和大型池的記憶體量。     手動設置共用記憶體管理         通過多個單獨的初始化參數調整組件的大小         使用適當的記憶體指導提出建議           啟用自動記憶體管理AMM             初始化參數:memory_max_target和memory_target                 MEMORY_TARGET 不為零的值,就是sga+pga可分配的最大值。但是此值不能大於MEMORY_MAX_TARGET的值。                                   ALTER SYSTEM SET MAMORY_MAX_TARGET=[數值] SCOPE=SPFILE;                  ALTER SYSTEM SET MEMORY_TARGET=[數值] SCOPE=SPFILEL;             啟用AMM後,可使用記憶體大小指導來幫助調整最大記憶體大小和目標記憶體大小。Oracle建議使用自動記憶體管理來簡化記憶體管理任務。           啟用自動共用記憶體管理ASMM                 初始化參數:sga_max_size和sga_target                     SGA_TARGET不為零的值,此值不能大於SGA_MAX_SIZE的值。shared_pool_size+db_cache_size+streams_pool_size+java_pool_size+large_pool_size                       ALTER SYSTEM SET SGA_MAX_SIZE=[數值] SCOPE=SPFILE;                     ALTER SYSTEM SET SGA_TARGET=[數值] SCOPE=SPFILE;         手動設置共用記憶體管理                     ALTER SYSTEM SET SHARED_POOL_SIZE=[數值] SCOPE=SPFILE;                     ALTER SYSTEM SET DB_CACHE_SIZE =[數值] SCOPE=SPFILE;                     ALTER SYSTEM SET JAVA_POOL_SIZE=[數值] SCOPE=SPFILE;                     ALTER SYSETM SET STREAMS_POOL_SIZE=[數值] SCOPE=SPFILE;                     ALTER SYSTEM SET LARGE_POOL_SIZE=[數值] SCOPE=SPFILE;         動態性能統計信息       
          
 
            系統範圍
                V$SYSSTAT
                V$SYSTEM_EVENT
            特定於會話
                V$SESSTAT
                V$SESSION_EVENT
            特定於服務
                V$SERVICE_STATS
                V$SERVICE_EVENT
 
 
             select statistic#,name,class,value,stat_id from v$sysstat;
 
             select sid,statistic#,value from v$sesstat;
          select service_name_hash,service_name,stat_id,stat_name,value from v$service_stats;
          select event,total_waits,total_timeouts,time_waited,average_wait,time_waited_micro from v$system_event
          select sid,event,total_waits,total_timeouts,time_waited,average_wait,max_wait,time_waited_micro,event_id from v$session_event
          select service_name,service_name_hash,event,event_id,total_waits,total_timeouts,time_waited,average_wait,time_waited_micro from v$service_event
 
     
 
        實例/資料庫
                V$DATABASE
                V$INSTANCE
                V$PARAMETER
                V$SPPARAMETER
                V$SYSTEM_PARAMETER
                V$PROCESS
                V$BGPROCESS
                V$PX_PROCESS_SYSSTAT
                V$SYSTEM_EVENT
        磁碟
                V$DATAFILE
                V$FILESTAT
                V$LOG
                V$LOG_HISTORY
                V$DBFILE
                V$TEMPFILE
                V$TEMPSEG_USAGE
                V$SEGMENT_STATISTICS
        記憶體
                V$BUFFER_POOL_STATISTICS
                V$LIBRARYCACHE
                V$SGAINFO
                V$PGASTAT
        爭用
                V$LOCK
                V$UNDOSTAT
                V$WAITSTAT
                V$LATCH

 

  無效和不可用對象     對性能的影響:             PL/SQL代碼對象要重新編譯             索引要重建         無效PL/SQL對象,可通過查詢數據字典來查看PL/SQL對象的當前狀態。                 SELECT OWNER,OBJECT_NAME,OBJECT_TYPE  FROM DBA_OBJECTS WHERE STATUS='INVALID';             預設情況下,每24小時會檢查一次“所有者的無效對象計數”度量,如果單個所有者的無效對象數超過2個,就會發出預警。         
無效和不可用對象的處理
                不做任何處理,如果需要,大多數PL/SQL對象在被條用時會自動重新編譯。用戶在對象重新編譯時會經歷短暫的延遲。
                手動重新編譯無效對象
 
                ALTER PROCEDURE <owner>.<procedure_name> COMPILE;
            PACKAGE包需要執行兩個步驟
                ALTER PACKAGE <owner>.<package_name> COMPILE;
                ALTER PACKAGE <owner>.<package_name> COMPILE BODY;
 
 
        不可用索引,可查詢視圖DBA_INDEXES數據字典和DBA_IND_PARTITIONS視圖
                SELECT OWNER,TABLE_NAME,INDEX_NAME FROM DBA_INDEXES WHERE STATUS='UNUSEABLE';
                SELECT INDEX_OWNER,PARTITION_NAME,INDEX_NAME FROM DBA_IND_PARTITIONS WHERE STATUS='UNUSEABLE'; 
 
            重建索引
                ALTER INDEX <owner>.<index_name> REBUILD;
                ALTER INDEX <owner>.<index_name> REBUILD ONLINE; 
                ALTER INDEX <owner>.<index_name> REBUILD TABLESPACE <tablespace_name>; 

 

                如果省略了TABLSPACE子句,則會在索引曾經所在的相同表空間中重建索引。使用REBUILD ONLINE子句,用戶可以在重建時繼續更新索引表。(如果不使用online關鍵字,用戶必須等待重建完成後才能對受影響的表執行DML.如果索引不可用,即使用online關鍵字,也不會在重建過程中使用該索引。)               註意:重建索引是需要有可用於重建的空閑空間。重建前需驗證是否有足夠的空間。會使用到TEMP表空間。     總結:         自動記憶體管理(AMM),主要是管理PGA+SGA記憶體的分配,兩個初始化參數memory_max_target&memory_target控制         自動共用記憶體管理(ASMM),管理SGA記憶體組件,sga_max_size&sga_target參數控制,shared_pool_size,db_cache_size,java_pool_size,large_pool_size,streams_pool_size         手動管理sga記憶體組件,shared_pool_size,db_cache_size,java_pool_size,large_pool_size,streams_pool_size          查看與性能相關的動態視圖         無效對象和不可用索引的處理方式         

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 本文內容: 什麼是外鍵 外鍵的增加 外鍵的修改和刪除 外鍵的約束模式 首發日期:2018-04-12 什麼是外鍵: 外鍵就是表中存在一個欄位指向另外一個表的主鍵,那麼這個欄位就可以稱為外鍵。 一張表可以有多個外鍵。 外鍵用於約束表與表之間的關係,可以說外鍵是表之間的映射關係,這個關係可以幫助我們處理... ...
  • (註:sql對大小寫不敏感,附:命令行操作:cd 目錄名 可進入文件,cd .. 可返回上級木目錄) a) Select * from 表名(顯示表內所有數據) b) Select 屬性 from 表名 where 符合某條件(如id=’1’) c) Delete from 表名 where 屬性= ...
  • 在SQL Server日常的函數、存儲過程和SQL語句中,經常會用到不同數據類型的轉換。在SQL Server有兩種數據轉換類型:一種是顯性數據轉換;另一種是隱性數據轉換。下麵分別對這兩種數據類型轉換進行簡要的說明: 1 顯式轉換 顯示轉換是將某種數據類型的表達式顯式轉換為另一種數據類型。常用的是C ...
  • 資料庫 表 發生變化,需要把2.0的表數據 同步到3.0庫中去; -- 同步數據存儲過程執行 -- 更新留言舊表數據到新表數據中 /*DEFINER:Vector*/ drop procedure if exists p_for_feedback_message; create procedure ...
  • 最近在梳理資料庫程式連接信息,這裡對腳本做個總結,希望對需要的同仁有所幫助 一、Oracle連接信息統計 sys_context函數使用方法以及含義如下: 二、SQLServer連接信息統計 三、MySQL連接信息統計 四、PG連接信息統計 ...
  • 轉自:http://www.maomao365.com/?p=4942 下文主要講述:重覆數據只獲取一條的方法 row_number函數在資料庫中的功能是為每一行 按照一定的規則生成一個編號,我們常常利用這一屬性,對錶進行分頁操作,下文我們將講述採用 row_number函數刪除表中重覆數據行 ...
  • 本文內容: 連接查詢 聯合查詢 子查詢 from子查詢 where子查詢 exists子查詢 首發日期:2018-04-11 連接查詢: 連接查詢就是將多個表聯合起來查詢,連接查詢方式有內連接、外連接、自然連接、交叉連接。連接查詢使得可以同時查看多張表中數據。 內連接:有條件連接,多個表之間依據指定... ...
  • 文件組的基本知識點介紹完畢後,根據場景引入中的內容,我們將利用SQL Server文件組技術來實現冷熱數據隔離備份的方案設計介紹如下。 設計分析 由於payment資料庫過大,超過10TB,單次全量備份超過20小時,如果按照常規的完全備份,會導致備份文件過大、耗時過長、甚至會因為備份操作對I/O能力 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...