个人资料名称无效

时间:2010-08-16 06:30:29

标签: sql-server sql-server-2008

我有一个带有用户组的Windows帐户并尝试执行sp_send_dbmail但收到错误:配置文件名称无效。但是,当我以管理员身份登录并执行sp_send_dbmail时,它设法发送电子邮件,因此显然服务器上存在配置文件名称。任何人都可以请求帮助吗?

5 个答案:

答案 0 :(得分:40)

您需要授予用户或组权限才能使用该配置文件。需要将它们添加到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 ;

答案 1 :(得分:17)

我也遇到了同样的问题。这就是我的所作所为。

如果您已经完成授予用户/组使用配置文件名称的权限。
1.转到configuration Wizard of Database Mail
2.勾选管理配置文件安全性 3.在公共配置文件选项卡上,检查您的配置文件名称 4.在专用配置文件选项卡上,为用户名选择NT AUTHORITY \ NETWORK SERVICE并检查您的配置文件名称 5.对于NT AUTHORITY \ SYSTEM用户名,这次是#4 6.单击“下一步”直到“完成”。

这就是全部。希望它有所帮助。

答案 2 :(得分:2)

您是否为SQL Server代理启用了配置文件?这是在DatabaseMail中创建电子邮件配置文件时遗漏的常见步骤。

步骤:

  • 在对象资源管理器(SSMS)中右键单击SQL Server代理
  • 点击“属性”
  • 单击左侧导航中的“警报系统”选项卡
  • 启用邮件配置文件
  • 设置邮件系统和邮件配置文件
  • 点击确定
  • 重新启动SQL Server代理

答案 3 :(得分:0)

就我而言,我在服务器之间移动SProc,并且TSQL代码中的配置文件名称与新服务器上的配置文件名称不匹配。

更新TSQL配置文件名称==新的服务器配置文件名称为我修复了该错误。

答案 4 :(得分:0)

  

配置文件名称无效[SQLSTATE 42000](错误14607)

这是在我将作业脚本从旧的SQL Server复制到新的SQL Server之后发生的。在SSMS的“管理”下,新SQL Server中的“数据库邮件”配置文件名称不同。我要做的就是更新作业脚本中的名称。