建立 LOGON 觸發器且程式碼有誤 (如參考不存在物件) 時,所有正常登入嘗試皆會失敗,錯誤訊息:
登入失敗,觸發器執行錯誤...

CREATE TRIGGER BadLogonTrigger ON ALL SERVER FOR LOGON
AS
BEGIN
INSERT INTO BadDB.dbo.SomeTable VALUES ('Test'); -- BadDB 不存在
END;
GO
ALTER ANY SERVER TRIGGER 或 CONTROL SERVER 權限,直接執行:DISABLE TRIGGER BadLogonTrigger ON ALL SERVER;
-- 或
DROP TRIGGER BadLogonTrigger ON ALL SERVER;
DAC 專為「無法正常連線時」提供最小資源、跳過登入觸發器的緊急連線。
sp_configure 'remote admin connections', 1; RECONFIGURE;。sysadmin 固定伺服器角色成員。| 工具 | 連線字串 / 參數 |
|---|---|
| SSMS | 伺服器名稱輸入 ADMIN:ServerName 或 ADMIN:IP,Port |
| sqlcmd | sqlcmd -A -S ServerName -U sa -P password (-A 參數啟用 DAC) |

-- 刪除錯誤觸發器
DROP TRIGGER BadLogonTrigger ON ALL SERVER;
GO
-- 或暫時停用
DISABLE TRIGGER BadLogonTrigger ON ALL SERVER;
GO
TRY...CATCH 捕獲例外,避免未處理錯誤中斷登入。master 資料庫,包含伺服器級觸發器定義。