監視 SQL Server 管理元件中的元件中的元件
本節說明 SQL Server 管理元件中的監視組態。
SQL Server Agent 警示規則:組態的特定數據
SQL Server 的管理元件提供下列 SQL Server 代理程式警示規則:
- Windows 上的 MSSQL: 警示引擎因為無法復原的本機事件記錄錯誤而停止
- Windows 上的 MSSQL: SQL 作業無法順利完成
- Windows 上的 MSSQL: 無法執行作業步驟,因為子系統無法載入
- Windows 上的 MSSQL: 代理程式是可疑的。 過去幾分鐘內沒有回應
- Windows 上的 MSSQL: 無法啟動 SQL Server Agent
- Windows 上的 MSSQL: SQL Server Agent 起始自我終止
- Windows 上的 MSSQL: 作業的步驟在子系統中造成例外狀況
- Windows 上的 MSSQL: SQL Server Agent 無法連線到 SQL Server
- Windows 上的 MSSQL: 無法重新開啟本機事件記錄
根據預設,這些規則會在代理程序監視模式中啟用,但在混合監視模式中停用,因為 Operations Manager 不允許事件記錄檔的事件在遠端電腦上收集。 若要變更這項功能,您可以啟用 AllowProxying 選項來覆寫這些規則。
注意
啟用 AllowProxying 選項可能會導致遠端程式代碼執行。 除非您確定您的電腦受到保護,否則請勿啟用此選項。
這些規則都無法在無代理程序監視模式中運作,且 Linux 上的 SQL 無法使用。
AlwaysOn 警示規則
SQL Server 管理元件有兩個事件規則,在 Windows 應用程式記錄檔中出現下列事件時發出警示:
事件標識碼 1480,資料庫複本角色已變更
事件標識碼 19406,可用性複本角色已變更
根據預設,SQL Server 可能不會在應用程式記錄檔中引發這些事件。 若要啟用它們,請執行下列 T-SQL 腳稿:
sp_altermessage 1480, 'with_log', 'true'
sp_altermessage 19406, 'with_log', 'true'
可用性資料庫備份監視
SQL Server 的管理元件提供監視,以檢查資料庫和記錄備份是否存在和存留期,如 SQL Server Microsoft 所報告。 這是藉由對 SQL 實例的 master 資料庫執行查詢,並傳回備份的存留期來完成。
這些監視器位於可用性群組檢視中的可用性群組資料庫可用性狀態匯總之下。 監視器清單如下所示:
- 可用性資料庫備份狀態監視器
- 可用性資料庫記錄備份狀態監視器
可用性資料庫備份狀態監視器
此監視器會以可用性資料庫健康情況為目標,並根據天數的臨界值檢查資料庫備份狀態。
根據預設,監視器不會追蹤 可用性群組備份喜好設定。 如果啟用此 overdrive,監視器將會追蹤可用性群組的備份喜好設定中所設定的備份位置,並確認所選複本上的備份是否符合備份頻率設定。
選取可用性群組的備份喜好設定如下所示:
慣用次要
指定應該在次要複本上進行備份,但是主要複本是唯一線上複本的情況例外。 在此情況下,應該在主要複本上進行備份。 這是預設選項。
僅次要
指定絕對不能在主要複本上執行備份。 如果主要復本是在線唯一的複本,則不應該進行備份。
主要
指定備份一定要在主要複本上進行。 如果您需要備份功能,例如建立次要複本上執行備份時不支援的差異備份,這個選項會很有用。
任何複本
指定當您選擇要執行備份的複本時,您希望備份作業忽略可用性複本的角色。
注意
備份作業可能會評估其他因素,例如每個可用性複本的備份優先順序,以及其操作狀態和聯機狀態。
以下是開啟和關閉備份喜好設定選項的 範例是可用性群組的主要複 本,而 備份檔只存在於次要複 本上。
已啟用追蹤備份喜好設定參數 - 針對這兩個資料庫複本,可用性資料庫備份狀態監視器處於嚴重狀態:
追蹤備份喜好設定參數已 停用 - 只有 主資料庫複 本可用性資料庫備份狀態監視器處於 嚴重 狀態:
可用性資料庫記錄備份狀態監視器
此監視器會以可用性資料庫健康情況為目標,並根據分鐘中的臨界值檢查資料庫記錄備份狀態。
可用性資料庫匯總監視警示
可用性資料庫備份狀態和可用性資料庫記錄備份狀態監視器會設定為匯總原則「任何成員的最佳狀態」,並預設具有個別匯總的重要警示,以顯示可用性群組中資料庫的完整狀態。
可用性資料庫是一個可能裝載於許多複本的資料庫實體,因此只有「可用性資料庫備份狀態(匯總)」具有警示,以檢查整個可用性資料庫狀態,以在每一個復本上顯示資料庫狀態:
匯總會變成重大,而且只有在所有資料庫複本都有重要的資料庫備份或記錄備份狀態時,才會引發警示。 如果只有一個復本具有重要的資料庫備份或記錄備份狀態,匯總會根據匯總原則維持良好狀態。
原則監視
SQL Server 的管理元件會讀取每個物件的 PBM (原則式管理) 原則狀態,以收集位於目標 SQL Server 實例上之資料庫和 Always On 物件的健全狀況計量。
除了系統原則之外,管理元件還允許監視下列物件的自定義用戶原則:
- Database
- 可用性群組
- 可用性複本
- 資料庫複本
針對這些物件,管理元件具有下列監視器:
- 具有警告狀態的雙狀態監視器。 此監視器會顯示具有其中一個預先定義警告類別目錄做為 原則類別目錄的自定義用戶原則狀態。
- 具有錯誤狀態的雙狀態監視器。 此監視器會顯示具有其中一個預先定義錯誤類別目錄做為 原則類別目錄的自定義用戶原則狀態。
空間監視
SQL Server 的管理元件能夠藉由收集下列層級的一組計量來執行空間監視:
- Database
- 檔案群組
- 檔案
- 記錄檔
您可以使用單位監視器和效能計量來檢視多個資料庫和長時間時間間隔的這項資訊。
空間監視支援下列類型的媒體:
- 本機記憶體和裝入點
- 叢集共用磁碟區
- SMB 共用
- Azure BLOB
匯入 SQL Server 管理元件之後,您可能會發現預設會啟用某些空間監視工作流程,而其他工作流程則會停用。 為了減少環境負載的目的,空間監視只會針對資料庫層級啟用,並針對檔案群組、記錄檔、記憶體內部 OLTP 容器和 FILESTREAM 檔案群組層級停用。 如果您的環境對額外負載很敏感,則不建議啟用很少使用的工作流程。
注意
監視檔案群組時,只有在檔案群組中的所有檔案完全狀況不良時,才會擲回警示。 如果檔案群組中至少有一個狀況良好的檔案,則不會註冊任何警示。
下列清單說明每個空間監視工作流程的預設狀態:
- 已啟用適用於 Windows 和 Linux 的探索
- 資料庫引擎
- 資料庫引擎的資料庫
- 已停用適用於 Windows 和 Linux 的探索
- 資料庫檔案群組
- 資料庫檔案
- 事務歷史記錄檔
- FILESTREAM 檔案群組
- 記憶體優化數據檔群組
- 記憶體優化數據檔群組容器
- 已啟用適用於 Windows 的監視器
- 以資料庫為目標
- 數據列數據可用空間剩餘
- 左側LOG可用空間
- 以資料庫為目標
- Windows 的已停用監視器
- 以資料庫為目標
- ROWS 數據空間百分比變更
- 左側記憶體內部 OLTP 資料可用空間
- FILESTREAM 資料可用空間剩餘
- 以檔案群組為目標
- 左側資料庫檔案可用空間
- 以記錄檔為目標
- 資料庫記錄檔剩餘空間
- 以記憶體內部 OLTP 數據容器為目標
- 記憶體優化數據檔群組容器可用空間
- 以 FILESTREAM 檔案群組為目標
- 資料庫 FILESTREAM 檔案群組可用空間
- 以資料庫為目標
- 已啟用適用於Linux的監視器
- 以檔案群組為目標
- 左側資料庫檔案可用空間
- 以記錄檔為目標
- 資料庫記錄檔剩餘空間
- 以記憶體內部 OLTP 數據容器為目標
- 記憶體優化數據檔群組容器可用空間
- 以檔案群組為目標
下列監視器支援健全 狀況計算模式 覆寫:
- FILESTREAM 資料可用空間剩餘
- 左側記憶體內部 OLTP 資料可用空間
- 資料庫記錄檔剩餘空間
- 數據列數據可用空間剩餘
此覆寫可讓您定義想要監視環境中可用空間的方式。 您可以指示上述任何監視器根據以百分比字詞、 或容量計量 (MB) 表示的 『Threshold』 參數來追蹤健康情況狀態。 若要讓監視更有效率,您可以同時使用百分比字詞、 和容量計量 (MB) 閾值,在此情況下,最差狀態的計量將用來報告整體健全狀況狀態。
Linux 上 SQL 的已停用空間監視工作流程
預設會停用下列工作流程,因為 Linux 上的 SQL Server 未提供必要的數據:
- 規則
- Linux 上的 MSSQL:資料庫記憶體最佳化資料檔案群組可用空間總計 (MB)
- Linux 上的 MSSQL:資料庫記憶體優化數據檔群組可用空間總計 ≦
- Linux 上的 MSSQL:資料庫 FILESTREAM 檔案群組可用空間總計 ≦
- Linux 上的 MSSQL:資料庫 FILESTREAM 檔案群組可用空間總計 (MB)
- Linux 上的 MSSQL:資料庫檔案群組可用空間總計 ≦
- Linux 上的 MSSQL:資料庫檔案群組可用空間總計 (MB)
- Linux 上的 MSSQL:資料庫檔案群組配置的可用空間 ≦
- Linux 上的 MSSQL:資料庫檔案群組設定的可用空間 (MB)
- Linux 上的 MSSQL:資料庫可用外空間 (MB)
- Linux 上的 MSSQL:資料庫設定的可用空間 (MB)
- Linux 上的 MSSQL:資料庫事務歷史記錄可用空間總計 ≦
- Linux 上的 MSSQL:使用的資料庫設定空間 (MB)
- Linux 上的 MSSQL: 資料庫可用空間總計 ≦
- Linux 上的 MSSQL:資料庫可用空間總計 (MB)
- Linux 上的 MSSQL資料庫設定的空間 (MB)
- 顯示器
- 左側資料庫可用空間
- 資料庫空間百分比變更
- 事務歷史記錄可用空間 ≤
- 資料庫 FILESTREAM 檔案群組可用空間
資料庫狀態監視
資料庫狀態監視的目的是檢查 Microsoft SQL Server 所報告的資料庫狀態。 狀態檢查是針對傳回資料庫狀態之 SQL Server 實例的 master 資料庫執行查詢來完成。 如果您收到此監視器的警示,則需要採取動作,才能讓資料庫回到操作狀態。
除了 ONLINE 以外的所有資料庫狀態都會導致狀況不良的監視狀態。 下表定義資料表狀態。
State | 定義 |
---|---|
ONLINE | 資料庫可供存取。 主要檔案群組是在線上,雖然可能尚未完成恢復的恢復階段。 |
OFFLINE | 資料庫是無法使用的。 明確的使用者動作可使資料庫變成離線狀態,並且在採取其他的使用者動作之前都是離線狀態。 例如,可以將資料庫設成離線,好讓檔案移到新的磁碟中。 在完成移動後,就會將資料庫重新啟動為線上狀態。 |
RESTORING | 在離線狀態還原主要檔案群組的一或多個檔案,或還原一或多個次要檔案。 資料庫是無法使用的。 |
RECOVERING | 資料庫恢復中。 恢復程序是暫時性的狀態;如果恢復成功,資料庫就會自動變成線上狀態。 如果恢復失敗,資料庫就會變成有疑問的狀態。 資料庫是無法使用的。 |
RECOVERY PENDING | SQL Server 在復原期間遇到資源相關錯誤。 資料庫並未損毀,但是檔案有可能遺失或系統資源限制有可能造成它無法啟動。 資料庫是無法使用的。 需要使用者執行其他動作以解決錯誤並讓恢復處理得以完成。 |
SUSPECT | 至少主要檔案群組為有疑問的,而且有可能會損毀。 在 SQL Server 啟動期間無法復原資料庫。 資料庫是無法使用的。 需要使用者執行其他動作來解決問題。 |
EMERGENCY | 使用者已變更資料庫並將狀態設為 EMERGENCY。 資料庫是在單一使用者模式下,而且可以進行修復或還原。 資料庫是標示為 READ_ONLY、記錄已停用並限定只有 系統管理員 固定伺服器角色的成員才可存取。 EMERGENCY 主要是做為疑難排解的用途。 例如,標示為有疑問的資料庫可以設為 EMERGENCY 狀態。 這將可允許系統管理員唯讀存取資料庫。 只有 系統管理員 固定伺服器角色的成員,可以將資料庫設定為 EMERGENCY 狀態。 |
如需詳細資訊,請參閱 Database States。
此監視器也支援 Windows 型環境的「如果可用性群組離線時停用」覆寫。 當此覆寫設定為 true 且裝載資料庫的可用性群組無法使用時,監視器會停止追蹤這類資料庫的狀態。 此覆寫很實用,因為它可協助您防止因架構細節而使用 SQL Server 2012 時可能發生的警示風暴。 針對較新版本的 SQL Server,不需要此覆寫。
相同磁碟驅動器上的許多資料庫
管理元件中的空間監視在許多資料庫共用相同的媒體且 啟用自動成長 設定的環境中可能會造成嘈雜。 在這種情況下,當硬碟上的可用空間量達到閾值時,就會產生每個資料庫的警示。
若要降低雜訊,請關閉數據和事務歷史記錄檔的空間監視,並使用操作系統管理元件來監視硬碟上的空間。
資料庫記憶體延遲監視
SQL Server 的管理元件會 收集每個資料庫的資料庫磁碟讀取延遲 (ms) 和 DB 磁碟寫入延遲 (ms) 效能計量。 此外,管理元件會定義兩個相關聯的監視器,以在效能大幅降低的情況下註冊警示。 預設會停用這些監視器和效能規則。 視需要只針對特定 DB 加以啟用。
封鎖的會話
封鎖會話監視器是設計來查詢每個資料庫,以尋找長時間封鎖的會話。 如果偵測到封鎖且超過指定的臨界值,狀態就會變更並引發警示。
您可以套用覆寫來變更 WaitMinutes 參數,以判斷封鎖的工作階段是否應該視為長時間執行。 此參數的預設值為一分鐘。
安全性實體設定狀態監視器
此監視器會檢查每個必要的 SQL Server 安全性實體是否可在設定的執行 身分帳戶下存取。
以下是以 SQL Server 資料庫引擎 為目標的監視器所檢查的安全性實體完整清單:
伺服器層級許可權
- VIEW SERVER STATE
- VIEW ANY DEFINITION
- VIEW ANY DATABASE
動態管理檢視的SELECT許可權
- master.sys.dm_hadr_availability_group_states
- master.sys.dm_hadr_availability_replica_states
- master.sys.dm_hadr_database_replica_cluster_states
- master.sys.dm_os_performance_counters
- master.sys.dm_tran_active_transactions
- master.sys.dm_tran_session_transactions
- master.sys.dm_exec_sessions
- master.sys.dm_exec_requests
- master.sys.dm_exec_connections
- master.sys.dm_os_sys_info
- master.sys.dm_os_ring_buffers
- master.sys.dm_os_volume_stats
- master.sys.dm_os_threads
- master.sys.dm_server_services
- master.sys.dm_db_xtp_checkpoint_files
- master.sys.dm_db_xtp_table_memory_stats
- master.sys.dm_db_xtp_hash_index_stats
- master.sys.dm_resource_governor_resource_pools
- master.sys.dm_db_index_physical_stats
目錄檢視的 SELECT 許可權
- master.sys.dm_os_host_info
- master.sys.availability_groups
- master.sys.databases
- master.sys.database_files
- master.sys.tables
- master.sys.filegroups
- master.sys.syscolumns
- master.sys.sysprocesses
- master.sys.availability_replicas
- master.sys.database_mirroring
- master.sys.configurations
- master.sys.indexes
- msdb.dbo.syspolicy_policies
- msdb.dbo.syspolicy_conditions
- msdb.dbo.syspolicy_policy_execution_history
- msdb.dbo.syspolicy_configuration
- msdb.dbo.syspolicy_system_health_state
- msdb.dbo.syspolicy_object_sets
- msdb.dbo.syspolicy_policy_categories
- msdb.dbo.syspolicy_target_sets
- msdb.dbo.syspolicy_target_set_levels
- msdb.dbo.syspolicy_policy_execution_history_details
- msdb.dbo.sysjobschedules
- msdb.dbo.syscategories
- msdb.dbo.sysjobs_view
- msdb.dbo.sysjobactivity
- msdb.dbo.sysjobhistory
- msdb.dbo.syssessions
- msdb.dbo.log_shipping_primary_databases
- msdb.dbo.log_shipping_secondary_databases
- msdb.dbo.backupset
預存程式的 EXECUTE 許可權
- master.sys.sp_enumerrorlogs
- master.sys.xp_readerrorlog
- master.sys.xp_instance_regread
- msdb.dbo.sp_help_job
- msdb.dbo.agent_datetime
- msdb.dbo.SQLAGENT_SUSER_SNAME
以下是以 SQL Server Database 為目標的監視器所檢查的安全性實體完整清單:
- 目錄檢視的 SELECT 許可權
- sys.database_files
- sys.tables
- sys.filegroups
- sys.syscolumns
注意
有些監視器的名稱中可能有具有雙底線的屬性。 這類屬性用於內部管理元件用途;請確定不要使用它們。
WMI 健全狀況狀態監視器
此監視器會檢查已設定 的執行身分帳戶 是否能夠存取目標 SQL Server 上的下列命名空間:
- ROOT\CIMV2
- ROOT\Microsoft\SqlServer
- ROOT\Microsoft\SqlServer\ComputerManagement11
- ROOT\Microsoft\SqlServer\ComputerManagement12
- ROOT\Microsoft\SqlServer\ComputerManagement13
- ROOT\Microsoft\SqlServer\ComputerManagement14
- ROOT\Microsoft\SqlServer\ComputerManagement15
- ROOT\Microsoft\SqlServer\ComputerManagement16
當沒有任何上述命名空間的存取權時,監視器會產生警示。
SQL Server Agent 作業監視
SQL Server 的管理元件能夠使用下列工作流程執行 SQL Server 的可用性和效能監視 Agent 作業:
上次執行狀態監視器
此監視器會檢查 SQL Agent 上的所有作業,如果任何作業未順利完成,監視器就會將其狀態變更為警告。 這不會產生警示,因為有覆寫可停用警示以控制雜訊。 如果您想要此層級的監視,您必須覆寫 [產生警示 ] 以啟用。
監視器具有 失敗臨界值 覆寫數目,指出 SQL Agent 作業在監視器狀態變更為警告之前可能會失敗的次數。 覆寫 將 [已取消] 狀態定義為 [ 失敗] 可以追蹤取消作業的最後一次執行狀態為 [失敗]。
長時間執行的工作監視器
此監視器會檢查長時間執行的 SQL Agent 作業。 如果作業已執行的時間超過設定的臨界值 - 警告臨界值(分鐘) 和 重大臨界值(分鐘),就會顯示警告或錯誤警示。
根據預設,此監視器不會監視在 SQL Server Agent 啟動時自動啟動排程類型的作業,因為這些作業通常會執行,直到 SQL Agent 停止為止(也就是持續)。 通常,SQL Server 複寫 使用這類作業,但在某些情況下,當 SQL Server Agent 啟動排程類型時,自動啟動作業可能會執行相對較短的間隔。 若要監視這些作業,請使用以逗號分隔的作業名稱清單覆寫 Included 連續執行的作業 參數。 清單中的作業名稱應符合下列其中一個識別元類別的需求:
一般
- 可以包含逗號 (,) 和雙引號符號以外的任何字元。。
- 不應該以任何空格符開頭或結尾。
Delimited (分隔檔)
- 可以包含任何字元,而且應該以雙引號分隔。
- 雙引號應該以翻倍的方式逸出。
屬於上述任何類別的任何名稱都應該從 1 到 128 個字元,不包括分隔符。
作業持續時間監視器
此監視器會檢查 SQL Agent 上的所有作業,以及任何作業所花費的時間是否超過指定的臨界值。 如果作業持續時間超過設定的臨界值 - 警告臨界值(分鐘) 和 重大臨界值(分鐘),就會顯示警告或錯誤警示。 這不會產生警示,因為有覆寫可停用警示以控制雜訊。 如果您想要此層級的監視,您必須覆寫 [產生警示 ] 以啟用,或使用 [作業持續時間] 警示規則。
作業持續時間警示規則
此規則會檢查任何 SQL Agent 作業的運行時間是否已超過指定的臨界值,並在運行時間超出臨界值時擲回警示。
作業持續時間效能規則
此規則會收集任何 SQL Agent 作業的分鐘數。
SQL Server 連線加密憑證監視
SQL Server 管理元件提供能夠執行 SQL Server 連線加密憑證狀態的監視器。
SQL Server 可使用 TLS 來加密在 SQL Server 執行個體與用戶端應用程式之間的網路傳輸資料。 TLS 使用憑證來實作加密。 啟用 TLS 加密,可提高 SQL Server 執行個體和應用程式之間跨網路傳輸資料的安全性。 如需詳細資訊,請參閱 憑證概觀 和 憑證程式 文章。
此監視器是以 Windows 和 Linux 上的 SQL Server 資料庫引擎 為目標,並檢查憑證驗證期間天數和憑證需求。
重要
如果憑證存在於計算機存放區中,SQL Server 將不會啟動,但只會符合上述清單中的一些需求,如果它已手動設定為供 SQL Server 組態管理員 或透過登錄專案使用(僅適用於 Windows 上的 SQL Server)。 選取另一個符合所有需求的憑證,或移除 SQL Server 所使用的憑證,直到您可以布建符合需求的憑證為止。 如需詳細資訊,請參閱 設定 SQL Server 以進行加密 一文。
下表定義監視器覆寫參數,並微調 SQL Server 的憑證驗證需求:
覆寫名稱 | 描述 |
---|---|
要檢查的其他主機名 | 根據預設,監視器會檢查憑證是否包含目標資料庫引擎的主體名稱。 此覆寫允許使用以逗號分隔的其他主機名清單進行檢查,例如 Always On 接聽程式 DNS 名稱、主控電腦的 DNS 別名、FCI 虛擬名稱等等。 |
憑證必須設定 (僅適用於 Windows 上的 SQL Server) | 如果為 true,當資料庫引擎沒有明確設定的憑證時,監視器會將其狀態變更為 Critical。 |
忽略 [不受信任的根] 檢查 | 如果為 true,則監視器會忽略憑證未放在受信任的跟證書授權單位中。 如果放置這些憑證,操作系統會信任這些憑證,而且可由應用程式用來作為公鑰基礎結構 (PKI) 階層和數位證書可信任的參考。 |
設定旗標 'IgnoreCertificateAuthorityRevocationUnknown' | 請忽略在判斷憑證驗證時,證書頒發機構單位撤銷未知。 |
設定旗標 'IgnoreCtlNotTimeValid' | 請忽略憑證信任清單 (CTL) 在判斷憑證驗證時無效的原因,例如 CTL 已過期。 |
設定旗標 'IgnoreCtlSignerRevocationUnknown' | 在判斷憑證驗證時,忽略憑證信任清單 (CTL) 簽署者撤銷未知。 |
設定旗標 'IgnoreEndRevocationUnknown' | 忽略判斷憑證驗證時,結束憑證(用戶憑證)撤銷未知。 |
設定旗標 'IgnoreInvalidBasicConstraints' | 請忽略在判斷憑證驗證時的基本條件約束無效。 |
設定旗標 'IgnoreInvalidPolicy' | 判斷憑證驗證時,忽略憑證具有無效的原則。 |
設定旗標 'IgnoreNotTimeNested' | 忽略 CA (證書頒發機構單位) 憑證和已發行的憑證在驗證憑證時沒有巢狀的有效期間。 例如,CA 憑證的有效期間為 1 月 1 日到 12 月 1 日,而已發行憑證的有效期間為 1 月 2 日到 12 月 2 日,這就代表有效期間未呈現巢狀關係。 |
設定旗標 'IgnoreNotTimeValid' | 忽略鏈結中無效的憑證,因為憑證已過期,或判斷憑證有效性時尚未生效。 |
設定旗標 'IgnoreRootRevocationUnknown' | 請忽略判斷憑證驗證時,根撤銷是未知的。 |
設定旗標 'IgnoreWrongUsage' | 請忽略在判斷憑證驗證時未針對目前使用的憑證發出。 |
略過 [主機名] 檢查 | 如果為 true,則監視器會略過檢查憑證是否包含特定的主機名。 |
略過 [金鑰使用方式伺服器驗證] 檢查 | 如果為 true,則監視器會略過伺服器驗證憑證需求,以取得密鑰的使用延伸模組「伺服器驗證」。 某些連接驅動程序實作可能不會檢查此延伸模組是否存在,而且即使沒有延伸模組,也可能認為憑證有效。 |
略過 「撤銷」檢查 | 如果為 true,監視器將會忽略撤銷的所有相關問題。 |
透明數據加密 (TDE) 憑證備份狀態監視
SQL Server 管理元件提供監視,其能夠檢查用於加密資料庫加密密鑰的憑證尚未備份。
透明數據加密 (TDE) 會使用稱為資料庫加密金鑰的對稱金鑰來加密整個資料庫的記憶體。 也可以使用憑證來保護資料庫加密金鑰,該憑證是由 master 資料庫的資料庫主要金鑰所保護。 TDE 會執行資料和記錄檔的即時 I/O 加密和解密。 加密使用資料庫加密金鑰 (DEK)。 資料庫開機記錄會儲存金鑰以供復原時使用。 DEK 是對稱金鑰,並受到伺服器主要資料庫所儲存的憑證或 EKM 模組所保護的非對稱密鑰所保護。 TDE 會保護待用資料,亦即資料檔和記錄檔。 這讓您必須遵循不同行業建立的許多法令、規章和指導方針。 此功能可讓軟體開發人員使用 AES 和 3DES 加密演算法來加密資料,而無需變更現有的應用程式。 如需詳細資訊,請參閱 SQL Server 安全性最佳做法和 透明數據加密 (TDE) 文章。
注意
TDE 不適用於系統資料庫, 它無法用來加密 master、 model 或 msdb。 在啟用 TDE 的使用者資料庫時,tempdb 會自動加密,但無法直接加密。
長時間執行的查詢監視
SQL Server 管理元件會提供規則,如果任何執行中 SQL 查詢的運行時間已超過指定的臨界值(以秒為單位),就可以引發警示。
此規則支援具有下列覆寫的警示自定義篩選:
- 應用程式排除清單 - 用於排除具有應用程式名稱的查詢
- 資料庫排除清單 - 用於排除具有資料庫名稱的查詢
- 查詢排除清單 - 使用自訂查詢文字排除查詢
這些覆寫支援通配符,可用於排除具有應用程式名稱、資料庫名稱或查詢文字本身且具有逗號分隔值的長時間執行查詢。 例如,使用等 *test
條件來排除結尾為 _test
的查詢,或 Test*
排除開頭 Test
為的查詢,或 *test*
條件來排除查詢文字中任何部分 test
有專案之查詢。
如果元素應該包含星號 “,” 不是通配符、雙引號 (), 或反斜杠 (\),則必須使用反斜杠 \
逸出元素。 例如,使用像是 Query\*3
排除查詢文字中具有 Query*3
之查詢的條件、使用像是 \\path\\to\\
排除查詢文字中具有 \path\to\
查詢的條件,或 "GO, WITH"
條件來排除查詢文字中具有 "GO, WITH"
逗號項目的查詢。 可以同時使用具有排除清單的覆寫。
下表定義您可以在表示式中使用的通配符模式:
字元 | 描述 | 範例 |
---|---|---|
? | 符合任何單一字元。 您可以在字元字串中的任何位置使用問號 (?)。 | Quer? 會尋找 Query、Quer1、Quer_、Quer?、Quer*,但不是 Query1 或 Query。 |
* | 符合任意數目的字元。 您可以使用星號 \ 字元字串中的任何位置。 | DB* 會尋找 DB、DB1、DB2、DB_prod,但找不到 1DB 或資料庫。 *DB 會尋找 1DB、_DB、test-DB,但不1DB_prod或D_Base。 *DB* 會尋找cloudDB_1、DBtest、3DB,但不會prod_D_B或資料庫。 |
" | 比對雙引號中任意數目的字元。 您可以在字元字串中的任何位置使用雙引號 (“ ”)。 如果字元字串包含逗號,則必須加上字串的引號。 | “Instance, Database” 會尋找實例、資料庫字串,內含逗號,但不是個別的 Instance 字串串,以及個別的 Database 字串串。 「具有前置和尾端空格的查詢」 會尋找包含雙引號之所有空格的專案。 |
下表定義您可以在表示式中使用的逸出模式:
字元 | 描述 | 範例 |
---|---|---|
\* | 不是通配符。 逸出字元字串中的任何位置的星號 。 | dbname\* 會尋找 dbname*,但不是 dbname1,dbname_prod dbnames。 |
\" | 不是通配符。 在字元字串中的任何位置逸出雙引號 (“)。 | query \“example\” 會尋找查詢 “example”,但找不到 query\、查詢範例或 “example”。 |
\\ | 不是通配符。 將字元字串中的任何位置逸出反斜杠 (\)。 | C:\\Path\\to\\ 會尋找 C:\Path\to\,但找不到 C:\,Path\\to。 |
注意
由於安全性原因,此規則不會提供執行查詢的文字。