自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

5個(gè)SQL Server 2005 動(dòng)態(tài)管理對(duì)象有哪些?

數(shù)據(jù)庫(kù) SQL Server
我們今天主要向大家描述的是5個(gè)SQL Server 2005 動(dòng)態(tài)管理對(duì)象,下面就是文章的主要內(nèi)容的詳細(xì)描述,望大家會(huì)對(duì)其有更好的了解。

此文章主要向大家講述的是5個(gè)SQL Server 2005 動(dòng)態(tài)管理對(duì)象,SQL Server 2005數(shù)據(jù)庫(kù)的新功能是動(dòng)態(tài)管理對(duì)象,主要是在指定的時(shí)間來(lái)返回某個(gè)數(shù)據(jù)庫(kù)的實(shí)例特殊狀態(tài)信息的數(shù)據(jù)庫(kù)視圖或是函數(shù)。

這些對(duì)象允許數(shù)據(jù)庫(kù)管理員或開發(fā)者對(duì)數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行高效監(jiān)控。動(dòng)態(tài)管理對(duì)象取代了SQL Server以前版SQL Server 2005 動(dòng)態(tài)管理對(duì)象,它們是在指定時(shí)間返回某個(gè)數(shù)據(jù)庫(kù)實(shí)例的特殊狀態(tài)信息的數(shù)據(jù)庫(kù)視圖或函數(shù)。這些對(duì)象允許數(shù)據(jù)庫(kù)管理員或開發(fā)者對(duì)數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行高效監(jiān)控。動(dòng)態(tài)管理對(duì)象取代了SQL Server以前版本中的許多系統(tǒng)表格,但也為數(shù)據(jù)庫(kù)管理員提供更多觀測(cè)手段。

 

服務(wù)器上需要監(jiān)控的內(nèi)容,幾乎都有對(duì)應(yīng)的SQL Server 2005 動(dòng)態(tài)管理對(duì)象。既然有這么多動(dòng)態(tài)管理對(duì)象,在這篇文章中逐一進(jìn)行討論是不實(shí)際的。例如,共有12類動(dòng)態(tài)管理對(duì)象,但這里我主要討論我認(rèn)為相當(dāng)重要的五個(gè)對(duì)象,它們分別來(lái)自與SQL Server操作系統(tǒng)、目錄和執(zhí)行有關(guān)的類中。

 

這些對(duì)象被分為兩類:數(shù)據(jù)庫(kù)級(jí)別和服務(wù)器級(jí)別。SQL Server 2005的安全構(gòu)架有些不同,所以你必須采取一些措施保證你能夠使用本文討論的視圖和函數(shù)。你必須保證使用這些例子的用戶能夠查看對(duì)象的SERVER STATE和DATABASE STATE??梢詰?yīng)用GRANT語(yǔ)句來(lái)完成這一點(diǎn)。

在我開始介紹動(dòng)態(tài)管理對(duì)象之前,你應(yīng)該建立一個(gè)可用在所有例子里面的表格。列表A是建立這個(gè)表格的代碼。

SQL Server操作系統(tǒng)相關(guān)SQL Server 2005 動(dòng)態(tài)管理對(duì)象

sys.dm_os_performance_counters:這個(gè)視圖返回的信息列舉與SQL Server直接相關(guān)的性能統(tǒng)計(jì)。返回的信息代表通過(guò)Windows性能監(jiān)控器顯示的外部性能計(jì)數(shù)器。在SQL Server 2000中,這些數(shù)據(jù)以一個(gè)叫做sysperfinfo的系統(tǒng)表格來(lái)表示,SQL Server 2005中也有這個(gè)表格,但僅用于向后兼容。將來(lái)的版本可能會(huì)刪除這個(gè)表格。

要了解如何應(yīng)用這個(gè)視圖,而不是運(yùn)行Windows性能監(jiān)控器來(lái)獲取系統(tǒng)信息,請(qǐng)運(yùn)行列表B中的查詢代碼。這個(gè)查詢將返回服務(wù)器當(dāng)前時(shí)刻的緩存命中率(Buffer Cache Hit Ratio)。緩存命中率指在內(nèi)存中所發(fā)現(xiàn)的SQL Server請(qǐng)求頁(yè)面的百分比。如果服務(wù)器運(yùn)轉(zhuǎn)正常,這個(gè)值一般在90%以上。如果這個(gè)值低于90%,則意味著服務(wù)器將會(huì)去硬盤那里恢復(fù)數(shù)據(jù)頁(yè)面,這可能是服務(wù)器需要更多內(nèi)存的信號(hào)。

如果你為了同樣的目的,準(zhǔn)備運(yùn)行上面的查詢,并將得到的結(jié)果與運(yùn)行Windows性能監(jiān)控器顯示的結(jié)果進(jìn)行比較(SQL Server:緩沖器管理器緩存命中率),你會(huì)發(fā)現(xiàn)這些數(shù)據(jù)幾乎是一樣的。稍稍研究一下,就可以根據(jù)這個(gè)表格開發(fā)出你自己的腳本庫(kù),而不必總是運(yùn)行Windows性能監(jiān)控器。

Caveat:這個(gè)視圖僅限于SQL Server相關(guān)的計(jì)數(shù)器使用。如果你希望獲得SQL Server之外的數(shù)據(jù),你還是要使用Windows性能監(jiān)控器。

目錄相關(guān)動(dòng)態(tài)管理視圖和函數(shù)

sys.dm_db_index_physical_stats:這個(gè)動(dòng)態(tài)管理函數(shù)為數(shù)據(jù)表格和視圖返回相關(guān)數(shù)據(jù)及目錄信息。查看列表C。這個(gè)函數(shù)接受5個(gè)參數(shù):數(shù)據(jù)庫(kù)的ID、所討論的表格或視圖的ID、表格或視圖上的一個(gè)特定目錄的ID(被我忽略)、分區(qū)號(hào)(也被我忽略)和一個(gè)模式,我將它指定為“DETAILED”。將這些參數(shù)提交給這個(gè)函數(shù)會(huì)允許你查看DMVTest表格中的所有目錄細(xì)節(jié)。

在前面定義的表格中運(yùn)行列表C中的查詢,你會(huì)發(fā)現(xiàn)表格中既沒(méi)有頁(yè)面也沒(méi)有記錄。在DMVTest中增加一條記錄,再運(yùn)行查詢,就會(huì)發(fā)現(xiàn)表格中增加了一個(gè)頁(yè)面。

INSERT INTO DMVTest(C2, C3) VALUES(1,1)

這個(gè)函數(shù)返回的另一個(gè)特別有趣的域?yàn)閍vg_page_space_used_in_percent域,它說(shuō)明數(shù)據(jù)頁(yè)面有多大。從查詢中發(fā)現(xiàn)數(shù)據(jù)頁(yè)面約為0.25%。你可以應(yīng)用這個(gè)數(shù)據(jù)來(lái)開發(fā)程序,查看數(shù)據(jù)庫(kù)表格,并根據(jù)程序中設(shè)定的標(biāo)準(zhǔn),重新為它們編寫目錄。

 

執(zhí)行相關(guān)的動(dòng)態(tài)管理視圖和函數(shù)

sys.dm_exec_requests:這個(gè)視圖顯示發(fā)生在SQL Server實(shí)例中的每個(gè)請(qǐng)求的有關(guān)信息。當(dāng)你研究服務(wù)器阻塞時(shí),由此視圖提供的信息特別有用。讀、寫、會(huì)話設(shè)置和blocking_session_id是這個(gè)視圖返回的一些有用數(shù)據(jù)。blocking_session_id欄指出系統(tǒng)上阻塞數(shù)據(jù)庫(kù)請(qǐng)求的會(huì)話。稍后,我將舉出一個(gè)例子,說(shuō)明如何確定用戶運(yùn)行的阻塞請(qǐng)求的語(yǔ)句。

sys.dm_exec_sessions:SQL Server上每個(gè)得到驗(yàn)證的會(huì)話由它返回一行。在你希望找出連接到數(shù)據(jù)庫(kù)服務(wù)器的所有用戶時(shí),可用到這個(gè)視圖。它返回session_id、連接通過(guò)它建立會(huì)話執(zhí)行的讀和寫的程序、以及其它一些會(huì)話設(shè)置。這個(gè)視圖還包含一個(gè)叫做is_user_process的BIT域,在查詢這個(gè)表格時(shí)你可能會(huì)用到它。數(shù)值1表示會(huì)話為用戶會(huì)話而非系統(tǒng)定義的會(huì)話。

sys.dm_exec_sql_text:這是一個(gè)根據(jù)sql操作返回SQL Server語(yǔ)句的動(dòng)態(tài)管理函數(shù)。對(duì)某些動(dòng)態(tài)管理函數(shù)而言,SQL Server 2005將正在執(zhí)行的sql語(yǔ)句以散列值存儲(chǔ)。這個(gè)散列值可由sys.dm_exec_sql_text動(dòng)態(tài)管理函數(shù)解析。

但是,任何時(shí)候你希望將一個(gè)函數(shù)與另一個(gè)對(duì)象連接起來(lái),并從表格或視圖中提交一個(gè)域值時(shí),就會(huì)需要用到新的APPLY運(yùn)算符。SQL Server 2005以前的版本并不具備這一功能。(欲了解SQL Server 2005中APPLY運(yùn)算符的詳細(xì)信息,請(qǐng)參閱這篇文章。)

現(xiàn)在我們討論一下如何應(yīng)用這三個(gè)動(dòng)態(tài)管理函數(shù)。列表D中的查詢列舉出數(shù)據(jù)庫(kù)中所有當(dāng)前用戶請(qǐng)求執(zhí)行的會(huì)話、阻塞會(huì)話、程序、主機(jī)和SQL Server語(yǔ)句。

注意正在使用dm_exec_sql_text函數(shù),并從sys.dm_exec_requests視圖中提交sql_handle域。由sys.dm_exec_requests和sys.dm_exec_sessions視圖返回的每一行,都將調(diào)用sys.dm_exec_sql_text函數(shù)。

測(cè)試

對(duì)它們進(jìn)行測(cè)試是學(xué)習(xí)這些新型SQL Server 2005 動(dòng)態(tài)管理對(duì)象的最佳方法。SQL Server在線書籍提供了使用這些對(duì)象的一些資料,但動(dòng)手使用要比閱讀學(xué)到更多內(nèi)容。投入一點(diǎn)努力,你就會(huì)發(fā)現(xiàn)許多應(yīng)用對(duì)象的新方法,不僅包括這個(gè)例子中列出的對(duì)象,還包括SQL Server 2005中的動(dòng)態(tài)管理對(duì)象。

 

【編輯推薦】

  1. SQL Server 2005 Express混合模式登錄的設(shè)置
  2. SQL Server Compact中的DLL文件與工具
  3. SQL Server合并復(fù)制性能的提高有哪些方案?
  4. SQL Serverlink Oracle的幾種不同方式
  5. 遇到SQL Server 2000Bug不可怕!

 

責(zé)任編輯:佚名 來(lái)源: csdn.net
相關(guān)推薦

2011-03-29 15:27:26

SQL Server 動(dòng)態(tài)管理

2010-07-02 10:27:20

SQL Server

2010-06-29 17:45:22

SQL Server

2010-07-13 17:02:18

SQL Server

2010-11-08 09:59:22

SQL Server動(dòng)

2010-06-17 15:17:24

SQL Server

2010-07-19 09:13:20

升級(jí)到SQL Serv

2010-07-19 08:28:26

Sql Server2

2010-07-23 09:53:29

SQL Server

2010-10-20 15:31:49

SQL Server對(duì)

2010-07-23 12:55:29

SQL Server

2010-07-12 14:13:15

SQL Server開

2010-07-09 11:06:13

SQL Server

2010-07-15 09:14:32

SQL server組

2009-08-31 09:19:34

AMO對(duì)象

2010-07-06 17:16:43

SQL Server視

2010-07-20 11:26:08

SQL Server阻

2010-07-20 11:31:25

SQL Server避

2010-07-08 13:13:14

清除SQL Serve

2010-06-30 08:04:57

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)