Sql-Server
服務帳號需要哪些權限才能使用數據庫郵件?
我有一個在託管服務帳戶下執行的 SQL Server 2012 實例。我已經使用一個帳戶配置了數據庫郵件,並正在嘗試發送一封測試電子郵件,但我在伺服器的事件日誌中遇到了一些錯誤:
數據庫引擎實例=MYINSTANCE;Mail PID=2132;錯誤資訊:數據庫更新失敗。原因:對象“sysmail_logmailevent_sp”、數據庫“msdb”、模式“dbo”的執行權限被拒絕。
數據庫引擎實例=MYINSTANCE;郵件 PID=2212; 異常類型:Microsoft.SqlServer.Management.SqlIMail.Server.Common.BaseException 消息:數據庫讀取失敗。原因:對象“sp_readrequest”、數據庫“msdb”、模式“dbo”的執行權限被拒絕。數據:System.Collections.ListDictionaryInternal TargetSite:Microsoft.SqlServer.Management.SqlIMail.Server.Objects.QueueItem GetQueueItemFromCommand(System.Data.SqlClient.SqlCommand) HelpLink:NULL 來源:DatabaseMailEngine
如果我將執行 SQL Server 程序的帳戶設置為系統管理員,則此錯誤消失,郵件發送成功。但是,我所做的所有研究都表明,賦予該帳戶
DatabaseMailUserRole
在數據庫中的角色msdb
就足夠了。我已經這樣做了,但仍然收到相同的錯誤。我查看了 BOL,但找不到任何東西。
SQL Server 代理服務帳戶需要實例的系統管理員權限。