我有一个用户组的 Windows 帐户并尝试执行 sp_send_dbmail 但收到错误:
配置文件名称无效。
但是,当我以管理员身份登录并执行 sp_send_dbmail 时,它设法发送了电子邮件,因此很明显配置文件名称确实存在于服务器上。
我有一个用户组的 Windows 帐户并尝试执行 sp_send_dbmail 但收到错误:
配置文件名称无效。
但是,当我以管理员身份登录并执行 sp_send_dbmail 时,它设法发送了电子邮件,因此很明显配置文件名称确实存在于服务器上。
您需要授予用户或组使用配置文件的权限。需要将它们添加到 msdb 数据库,然后当您维护邮件的安全性时,您将在邮件向导中看到它们可用。
在此处阅读安全性:http: //msdn.microsoft.com/en-us/library/ms175887.aspx
在此处查看邮件程序列表:http: //msdn.microsoft.com/en-us/library/ms177580.aspx
“TestUser”的示例脚本使用名为“General Admin Mail”的配置文件。
USE [msdb]
GO
CREATE USER [TestUser] FOR LOGIN [testuser]
GO
USE [msdb]
GO
EXEC sp_addrolemember N'DatabaseMailUserRole', N'TestUser'
GO
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
@profile_name = 'General Admin Mail',
@principal_name = 'TestUser',
@is_default = 1 ;
您是否启用了SQL Server 代理的配置文件?这是在 DatabaseMail 中创建电子邮件配置文件时遗漏的常见步骤。
脚步:
配置文件名称无效 [SQLSTATE 42000](错误 14607)
在我将作业脚本从旧 SQL 服务器复制到新 SQL 服务器后,这发生在我身上。在 SSMS 中的管理下,新 SQL Server 中的数据库邮件配置文件名称不同。我所要做的就是更新作业脚本中的名称。
就我而言,我在服务器之间移动一个 SProc,而我的 TSQL 代码中的配置文件名称与新服务器上的配置文件名称不匹配。
更新 TSQL 配置文件名称 == 新的服务器配置文件名称为我修复了错误。