sybase 安裝MDA表

sybase缺省不安裝mda表,需要使用$SYBASE/ASE-12_5/scripts目錄(對於 NT 爲 %SYBASE%\ASE-12_5\scripts)中的 installmontables 腳本創建它們


PS:master 數據庫的文件空間必須要創建足夠大,否則建表的時候會報空間不足


1.創建一個名爲“loopback”的服務器

sp_addserver loopback, null, @@servername

go


2.爲“loopback”添加訪問接口,打開Dsedit ,新增一個“loopback” 的服務接口(無法創建MDA表的時候就是這個原因)

3.如果要使用mda表,必須有mon_role權限

grant role mon_role to 你的登陸用戶名

go


4.配置enable monitoring參數使可以使用mda表

sp_configure "enable monitoring",1

go

查看mda表使用可以調整的參數

sp_configure Monitoring

go


4. 安裝腳本

$SYBASE/ASE-12_5/scripts目錄下的installmon腳本,需要將該腳本的內容拷貝到isql界面中,然後執行


5. 安裝MDA表

$SYBASE/ASE-12_5/scripts目錄下的installmontables腳本,需要將該腳本的內容拷貝到isql界面中,然後執行


6. 配置相關參數 (一次保存300條記錄,可自行調整)

sp_configure  'max  SQL  text  monitored',300

go

sp_configure  'SQL  batch  capture',1

go

sp_configure  'sql  text  pipe  max  messages',300

go

sp_configure  'sql  text  pipe  active',1

shutdown

go

net start "Sybase SQLServer _XXX "




mda 表的簡單說明
monTables
提供對所有監控表的說明
monTableParameters
提供對每個監控表的所有可選參數的說明。
monTableColumns
說明每個監控表的所有列
monState
提供有關 Adaptive Server 的總體狀態的信息
monEngine
提供有關 Adaptive Server 引擎的統計信息
monDataCache
返回與 Adaptive Server 數據高速緩存有關的統計信息。
monProcedureCache
返回與 Adaptive Server 過程高速緩存有關的統計信息。
monOpenDatabases
提供與當前使用的數據庫有關的狀態信息和統計信息
monSysWorkerThread
返回與工作線程有關的服務器範圍的統計信息。
monNetworkIO
返回網絡 I/O 統計信息。
monErrorLog
從 Adaptive Server 錯誤日誌返回最新的錯誤消息。
monLocks
爲每個對象返回任何進程持有的以及請求的所有鎖的列表。
monDeadLock
提供有關在 Adaptive Server 中已經出現的最新死鎖的信息。
monWaitClassInfo
爲所有等待類提供文本說明
monWaitEventInfo
爲強制進程在 Adaptive Server 內等待的每種可能情況提供文本說明。
monCachedObject
返回當前在高速緩存中具有頁的所有對象和索引的統計信息。
monCachePool
提供爲所有高速緩存分配的所有池的統計信息。
monOpenObjectActivity
提供所有打開對象的統計信息。
monIOQueue
提供設備 I/O 統計信息,細分爲每個設備上常規數據庫和臨時數據庫的數據和日誌 I/O
monDeviceIO
返回與設備有關的統計信息。
   sybase的io讀寫單位是page,一般是2K。
   但是不一定每次就讀一頁。一般讀取8page。如果你的邏輯頁是2K,則是16Kbytes。
monSysWaits
提供一個服務器範圍的視圖,指出進程等待事件的位置。
monProcess
提供有關當前正在執行的或等待的進程的詳細統計信息。
monProcessLookup
提供一些信息,這些信息使應用程序、用戶、客戶機等可以跟蹤進程。
monProcessActivity
提供有關進程活動的詳細統計信息。
monProcessNetIO
提供每個進程的網絡 I/O 活動信息。
monProcessObject
提供有關進程已經訪問的對象的統計信息。
monProcessWaits
提供一個服務器範圍的視圖,指出進程等待事件的位置。
monProcessStatement
提供當前正在執行的語句的信息。
monProcessSQLText
提供當前正在執行的 SQL 文本
monSysPlanText
提供最新生成的文本計劃。
monSysStatement
提供有關最近執行的語句的統計信息。
monCachedProcedures
提供當前存儲在過程高速緩存中的所有過程的統計信息。
monSysSQLText
提供已經執行的最新 SQL 文本或當前正在執行的 SQL 文本。
monProcessProcedures
返回進程正在執行的所有過程的列表。


一個簡單例子
看哪個進程佔用cpu最多,它在幹什麼
select ps.SPID, ps.CpuTime,pst.LineNumber, pst.SQLText
from master..monProcessSQLText pst,
    master..monProcessStatement ps
where ps.SPID = pst.SPID
     and ps.CpuTime = (select max(CpuTime) from  master..monProcessStatement)
order by SPID, LineNumber




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章