ALTER SERVER AUDIT (Transact-SQL)

使用 SQL Server Audit 功能改變伺服器稽核物件。如需詳細資訊,請參閱<了解 SQL Server Audit>。

主題連結圖示Transact-SQL 語法慣例

語法

ALTER SERVER AUDIT audit_name
  
    TO { [ FILE ( <file_options> [, ...n] ) ] | APPLICATION_LOG | SECURITY_LOG }
    [ WITH ( <audit_options> [, ...n] ) ] 
}
| MODIFY NAME = new_audit_name
[ ; ]
<file_options>::=
{
       FILEPATH = 'os_file_path'
    [, MAXSIZE = { max_size { MB | GB | TB } | UNLIMITED } ]
    [, MAX_ROLLOVER_FILES =integer | UNLIMITED } ]
    [, RESERVE_DISK_SPACE = { ON | OFF } ] 
}
<audit_options>::=
{
    [  QUEUE_DELAY =integer ]
    [, ON_FAILURE = { CONTINUE | SHUTDOWN } ]
    [, STATE = = { ON | OFF } ]
}

引數

  • TO { FILE | APPLICATION_LOG | SECURITY }
    判斷稽核目標的位置。選項有二進位檔案、Windows 應用程式記錄檔或 Windows 安全性記錄檔。

    [!附註]

    Windows XP 不支援寫入安全性記錄檔。

  • FILEPATH = 'os_file_path'
    稽核記錄的路徑。檔案名稱是根據稽核名稱和稽核 GUID 所產生。

  • MAXSIZE **=**max_size
    指定稽核檔案所能成長的大小上限。max_size 值必須是整數,而且後面緊接著 MBGBTBUNLIMITED。您可以為 max_size 指定的大小下限為 2 MB,而上限則為 2,147,483,647 TB。當指定了 UNLIMITED 時,檔案會成長到磁碟已滿為止。指定低於 2 MB 的值將會引發 MSG_MAXSIZE_TOO_SMALL 錯誤。預設值為 UNLIMITED

  • MAX_ROLLOVER_FILES **=**integer | UNLIMITED
    指定檔案系統中所要保留的最大檔案數目。當設定 MAX_ROLLOVER_FILES=0 時,不會限制將要建立的換用檔案數目。預設值為 0。可以指定的最大檔案數目為 2,147,483,647。

  • RESERVE_DISK_SPACE = { ON | OFF }
    這個選項會在磁碟上將檔案預先配置為 MAXSIZE 值。只有當 MAXSIZE 不等於 UNLIMITED 時,才會套用它。預設值是 OFF。

  • QUEUE_DELAY **=**integer
    判斷在強制處理稽核動作之前經過的時間長度 (以毫秒為單位)。值為 0 表示同步傳遞。可設定的最小查詢延遲值為 1000 (1 秒),這是預設值。最大值為 2,147,483,647 (2,147,483.647 秒鐘或是 24 天 20 小時 31 分鐘又 23.647 秒鐘)。指定無效的數字將會引發 MSG_INVALID_QUEUE_DELAY 錯誤。

  • ON_FAILURE = { CONTINUE | SHUTDOWN }
    指示如果目標無法執行寫入,則寫入目標的執行個體是應該繼續還是停止。發出此內容的登入必須具有 SHUTDOWN 權限。如果登入沒有此權限,這個功能將會失敗,並傳回 MSG_NO_SHUTDOWN_PERMISSION 訊息。預設值為 CONTINUE。

  • STATE = { ON | OFF }
    啟用或停用收集記錄的稽核。變更執行中稽核的狀態 (從 ON 變更為 OFF) 會建立已停止稽核的稽核項目、已停止稽核的主體以及停止稽核的時間。

  • MODIFY NAME = new_audit_name
    變更稽核的名稱。不能搭配其他任何選項一起使用。

備註

當您呼叫 ALTER AUDIT 時,您至少必須指定其中一個 TO、WITH 或 MODIFY NAME 子句。

您必須將稽核的狀態設定為 OFF 選項,才能變更稽核。如果在設定 STATE=OFF 以外的任何選項時啟用稽核,而且執行 ALTER AUDIT,您將會收到 MSG_NEED_AUDIT_DISABLED 錯誤訊息。

您可以加入、改變及移除稽核規格,而不需停止稽核。

在稽核已建立之後,就不能變更稽核的 GUID。

權限

若要建立、改變或卸除伺服器稽核主體,您必須具有 ALTER ANY SERVER AUDIT 或 CONTROL SERVER 權限。

範例

A. 變更伺服器稽核名稱

下列範例會將伺服器稽核的名稱 HIPPA_Audit 變更為 HIPAA_Audit_Old。

USE master
GO
ALTER SERVER AUDIT HIPAA_Audit
WITH (STATE = OFF);
GO
ALTER SERVER AUDIT HIPAA_Audit
MODIFY NAME = HIPAA_Audit_Old;
GO
ALTER SERVER AUDIT HIPAA_Audit_Old
WITH (STATE = ON);
GO

B. 變更伺服器稽核目標

下列範例會將稱為 HIPPA_Audit 的伺服器稽核變更為檔案目標。

USE master
GO
ALTER SERVER AUDIT HIPAA_Audit
WITH (STATE = OFF);
GO
ALTER SERVER AUDIT HIPAA_Audit
TO FILE (FILEPATH ='\\SQLPROD_1\Audit\',
          MAXSIZE = 1000 MB,
          RESERVE_DISK_SPACE=OFF)
WITH (QUEUE_DELAY = 1000,
       ON_FAILURE = CONTINUE);
GO
ALTER SERVER AUDIT HIPAA_Audit
WITH (STATE = ON);
GO

變更記錄

更新的內容

已更正「權限」一節。

已將 UNLIMITED 選項加入至 MAX_ROLLOVER_FILES。

請參閱

參考

概念