亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

DBA應(yīng)該知道的一些關(guān)于SQL Server跟蹤標記的使用

 更新時間:2013年04月24日 10:05:32   作者:  
本篇文章小編為大家介紹,DBA應(yīng)該知道的一些關(guān)于SQL Server跟蹤標記的使用。需要的朋友參考下
跟蹤標記是什么?

    對于DBA來說,掌握Trace Flag是一個成為SQL Server高手的必要條件之一,在大多數(shù)情況下,Trace Flag只是一個劍走偏鋒的奇招,不必要,但在很多情況下,會使用這些標記可以讓你更好的控制SQL Server的行為。

下面是官方對于Trace Flag的標記:

    跟蹤標記是一個標記,用于啟用或禁用SQL Server的某些行為。

    由上面的定義不難看出,Trace Flag是一種用來控制SQL Server的行為的方式。很多DBA對Trace Flag都存在一些誤區(qū),認為只有在測試和開發(fā)環(huán)境中才有可能用到Trace Flag,這種想法只能說部分正確,因此對于Trace Flag可以分為兩類,適合在生產(chǎn)環(huán)境中使用的和不適合在生產(chǎn)環(huán)境中使用的。

    Important:Trace Flag屬于劍走偏鋒的招數(shù),在使用Trace Flag做優(yōu)化之前,先Apply基本的Best Practice。

如何控制跟蹤標記

    控制跟蹤標記的方式有以下三種:

1.通過DBCC命令

    可以通過DBCC命令來啟用或關(guān)閉跟蹤標記,這種方式的好處是簡單易用,分別使用下面三個命令來啟用,禁用已經(jīng)查看跟蹤標記的狀態(tài):

DBCC TRACEON(2203,-1) DBCC TRACEOFF(2203,1) DBCC TRACESTATUS

其中,TRACEON和TRACEOFF第二個參數(shù)代表啟用標志的范圍,1是Session Scope,-1是Global Scope,如果不指定該值,則保持默認值Session Scope。

另外,值得說的是,如果你希望在每次SQL Server服務(wù)啟動時通過DBCC命令控制某些Flag,則使用

EXEC sp_procoption @ProcName = '<procedure name>'   , @OptionName = ] 'startup'   , @OptionValue = 'on'; 

這個存儲過程來指定,sp_procoption存儲過程會在SQL Server服務(wù)器啟動時自動執(zhí)行。

       還有一點值得注意的是,不是所有的跟蹤標記都可以用DBCC命令啟動,比如Flag 835就只能通過啟動參數(shù)指定。

2.通過在SQL Server配置管理器中指定

這種方式是通過在數(shù)據(jù)庫引擎啟動項里加啟動參數(shù)設(shè)置,只有Global Scope。格式為-T#跟蹤標記1;T跟蹤標記2;T跟蹤標記3。

3.通過注冊表啟動

     這種方式和方法2大同小異,就不多說了。


一些在生產(chǎn)環(huán)境中可能需要的跟蹤標記

Trace Flag 610
減少日志產(chǎn)生量。如果你對于日志用了很多基礎(chǔ)的best practice,比如說只有一個日志文件、VLF數(shù)量適當、單獨存儲,如果還是不能緩解日志過大的話,考慮使用該跟蹤標記。

參考資料:

http://msdn.microsoft.com/en-us/library/dd425070.aspx
http://blogs.msdn.com/b/sqlserverstorageengine/archive/2008/10/24/new-update-on-minimal-logging-for-sql-server-2008.aspx
Trace Flag 834
使用 Microsoft Windows 大頁面緩沖池分配。如果服務(wù)器是SQL Server專用服務(wù)器的話,值得開啟該跟蹤標記。
Trace Flag 835
允許SQL Server 2005和2008標準版使用"鎖定內(nèi)存頁",和在組策略中設(shè)置的結(jié)果大同小異,但是允許在標準版中使用.
Trace Flag 1118
tempdb分配整個區(qū),而不是混合區(qū),減少SGAM頁爭搶。
當apply tempdb的best practice之后,還遇到爭搶問題,考慮使用該跟蹤標記。
參考資料:
http://blogs.msdn.com/b/psssql/archive/2008/12/17/sql-server-2005-and-2008-trace-flag-1118-t1118-usage.aspx
Trace Flag 1204和1222
這兩個跟蹤標記都是將死鎖寫到錯誤日志中,不過1204是以文本格式進行,而1222是以XML格式保存??梢酝ㄟ^
sp_readerrorlog查看日志。
Trace Flag 1211和1224
兩種方式都是禁用鎖升級。但行為有所差別1211是無論何時都不會鎖升級,而1224在內(nèi)存壓力大的時候會啟用鎖升級,從而避免了out-of-locks錯誤。當兩個跟蹤標記都啟用是,1211的優(yōu)先級更高。
Trace Flag 2528
禁用并行執(zhí)行DBCC CHECKDB, DBCC CHECKFILEGROUP,DBCC CHECKTABLE。這意味著這幾個命令只能單線程執(zhí)行,這可能會需要更多的時間,但是在某些特定情況下還是有些用處。
Trace Flag 3226  
防止日志記錄成功的備份。如果日志備份過于頻繁的話,會產(chǎn)生大量錯誤日志,啟用該跟蹤標記可以使得日志備份不再被記錄到錯誤日志。
Trace Flag 4199
所有KB補丁對于查詢分析器行為的修改都生效,這個命令比較危險,可能掃稱性能的下降,具體請參看:
http://support.microsoft.com/kb/974006
不應(yīng)該在生產(chǎn)環(huán)境中啟用的跟蹤標記 
Trace Flag 806 
 
在讀取過程中對頁檢查邏輯一致性,在錯誤日志中就可以看到類似下面的信息:
 
2004-06-25 11:29:04.11 spid51 錯誤: 823,嚴重性: 24 日狀態(tài): 2
2004-06-25 11:29:04.11 spid51 I/O 錯誤 (審核失?。?在讀取過程中檢測到的偏移量主題 SQL Server\MSSQL\data\pubs.mdf e:\Program 文件中的 0x000000000b0000.
 
參考資料:http://support.microsoft.com/kb/841776
 
該跟蹤標記會極大的降低性能?。?!

Trace Flag 818 
 
檢查寫一致性
蹤標志 818 啟用了一個內(nèi)存中的環(huán)形緩沖區(qū),用于跟蹤由運行 SQL Server 的計算機執(zhí)行的最后 2,048 個成功寫操作(不包括排序和工作文件 I/O)。發(fā)生 605、823 或 3448 之類的錯誤時,將傳入緩沖區(qū)的日志序列號 (LSN) 值與最新寫入列表進行比較。如果在讀操作期間檢索到的 LSN 比在寫操作期間指定的更舊,就會在 SQL Server 錯誤日志中記錄一條新的錯誤信息。大部分 SQL Server 寫操作以檢查點或惰性寫入形式出現(xiàn)。惰性寫入是一項使用異步 I/O 操作的后臺任務(wù)。環(huán)形緩沖區(qū)的實現(xiàn)是輕量的,因此對系統(tǒng)性能的影響可以忽略。

參考資料:http://support.microsoft.com/kb/826433

Trace Flag 1200 
 
返回加鎖信息的整個過程,是學(xué)習(xí)加鎖過程很牛逼的標志,示例代碼如下:
 
DBCC TRACEON(1200,-1)DBCC TRACEON(3604)DBCC TRACESTATUSSELECT * FROM AdventureWorks.person.Address
 
參考資料:
http://stackoverflow.com/questions/7449061/nolock-on-a-temp-table-in-sql-server-2008

Trace Flag 1806
 
禁用即時文件初始化,所有的磁盤空間請求全部使用填0初始化,可能造成在空間增長時產(chǎn)生阻塞。
 
Trace Flag 3502
在日志中顯示有關(guān)checkpoint的相關(guān)信息。如圖1所示。
2013-04-23_233140
圖1.在錯誤日志中顯示Checkpoint

Trace Flag 3505
不允許自動進行checkpoint,checkpoint只能手動進行,是非常危險的一個命令。
 
小結(jié)

跟蹤標志是控制SQL Server行為的一種方式,對于某些跟蹤標志來說,可以在生產(chǎn)環(huán)境中提高性能,而對于另一些來說,用在生產(chǎn)環(huán)境中是一件非常危險的事情,只有在測試環(huán)境中才能被使用。要記住,跟蹤標記對于調(diào)優(yōu)是一種劍走偏鋒的手段,只有在使用了所有基本的調(diào)優(yōu)手段之后,才考慮使用跟蹤標記。

相關(guān)文章

  • mysql定時自動備份數(shù)據(jù)庫的方法步驟

    mysql定時自動備份數(shù)據(jù)庫的方法步驟

    我們都知道數(shù)據(jù)是無價,如果不對數(shù)據(jù)進行備份,相當是讓數(shù)據(jù)在裸跑,本文就介紹一下如何給mysql定時自動備份數(shù)據(jù),感興趣的小伙伴們可以參考一下
    2021-07-07
  • MySQL中in和exists區(qū)別詳解

    MySQL中in和exists區(qū)別詳解

    最近在寫SQL語句時,對選擇IN 還是Exists猶豫不決,所以就上網(wǎng)查詢了一下資料,本文就詳細的介紹了兩個方法的區(qū)別,感興趣的可以了解一下
    2021-06-06
  • MySQL中可為空的字段設(shè)置為NULL還是NOT NULL

    MySQL中可為空的字段設(shè)置為NULL還是NOT NULL

    今天小編就為大家分享一篇關(guān)于MySQL中可為空的字段設(shè)置為NULL還是NOT NULL,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • MySQL 表空間碎片的概念及相關(guān)問題解決

    MySQL 表空間碎片的概念及相關(guān)問題解決

    這篇文章主要介紹了MySQL 表空間碎片的概念及相關(guān)問題解決,幫助大家更好的理解和學(xué)習(xí)使用MySQL,感興趣的朋友可以了解下
    2021-05-05
  • centos7安裝mysql5.7的踩坑記錄

    centos7安裝mysql5.7的踩坑記錄

    最近在做項目中發(fā)現(xiàn)CentOS 7下升級MySQL5.7的一個坑,所以下面這篇文章主要給大家介紹了關(guān)于centos7安裝mysql5.7的踩坑記錄,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-05-05
  • 解決mysql輸入密碼閃退的問題

    解決mysql輸入密碼閃退的問題

    之前安裝的mysql一直運行正常,但是在昨天裝了個VS2010旗艦版。結(jié)果今天mysql就不能用了,于是在網(wǎng)上看了一下最只要就是mysql的服務(wù)沒有起來的緣故。本文分享了幾個解決方案,有需要的朋友們可以參考借鑒,下面來一起看看吧。
    2016-11-11
  • mysql創(chuàng)建表添加字段注釋的實現(xiàn)方法

    mysql創(chuàng)建表添加字段注釋的實現(xiàn)方法

    這篇文章主要介紹了mysql創(chuàng)建表添加字段注釋的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • MySql 5.7.17 winx64的安裝配置詳細教程

    MySql 5.7.17 winx64的安裝配置詳細教程

    這篇文章主要介紹了MySql 5.7.17 winx64的安裝配置教程,初始化數(shù)據(jù)庫、配置相關(guān)信息的方法在本文中介紹的非常詳細,需要的朋友參考下
    2017-01-01
  • mysql中rpm方式安裝的詳解

    mysql中rpm方式安裝的詳解

    在本文中小編給大家整理了關(guān)于mysql安裝之rpm方式安裝的詳細步驟以及注意點,需要的朋友們學(xué)習(xí)下。
    2019-03-03
  • MYSQL拒絕訪問報錯not allowed to connect

    MYSQL拒絕訪問報錯not allowed to connect

    MYSQL拒絕訪問報錯not allowed to connect,下面有個可行的方法,可以在其它任何的主機上以root身份登錄
    2014-07-07

最新評論