use*_*036 3 sql-server sp-send-dbmail
我正在使用 SQL Server 的sp_send_dbmail存储过程通过数据库发送邮件。
但是当我执行该过程时,它正在关闭 db 邮件过程。我试图重新启动它sysmail_start_sp。但它在 7-8 秒内再次关闭。
我尝试使用以下代码:
EXEC msdb..sp_send_dbmail @profile_name = 'Test',
@recipients = 'abc@gmail.com',
@subject = 'test mail',
@body_format = 'HTML',
@body = 'test mail',
@from_address = 'xyz@yahoo.com'
Run Code Online (Sandbox Code Playgroud)
当我尝试检查错误日志时,发现以下错误:
信息:
对数据库的读取失败。原因:错误描述是“此位置不允许使用空格”。数据:System.Collections.ListDictionaryInternalTargetSite:Microsoft.SqlServer.Management.SqlIMail.Server.Objects.QueueItem GetQueueItemFromCommand(System.Data.SqlClient.SqlCommand)HelpLink: NULLSource:DatabaseMailEngineStackTrace 信息====================
另外,当我检查 sql 电子邮件日志历史记录时,我发现了这个错误:
邮件未排队。数据库邮件已停止。使用 sysmail_start_sp 启动数据库邮件。
小智 10
每当您尝试从数据库邮件发送测试邮件时;它抛出以下错误消息:
消息 14641,级别 16,状态 1,过程 sp_send_dbmail,邮件未排队。数据库邮件已停止。使用 sysmail_start_sp 启动数据库邮件。
首先,通过在 SSMS 中执行以下命令,确保启用了数据库中的 Service Broker Message Delivery:
SELECT is_broker_enabled FROM sys.databases WHERE name = 'msdb'
Run Code Online (Sandbox Code Playgroud)
如果上述查询的结果为 0,则激活服务代理。
激活 Service Broker 允许将消息传递到数据库。必须创建 Service Broker 端点才能从实例外部发送和接收消息。
要在数据库中激活 Service Broker,请使用以下命令:
USE master ;
GO
ALTER DATABASE DatabaseName SET ENABLE_BROKER ;
GO
Run Code Online (Sandbox Code Playgroud)如果启用了 Service Broker,则通过在 SQL Server Management Studio 中执行以下查询来确认是否启用了数据库邮件:
sp_configure 'show advanced', 1
GO
RECONFIGURE
GO
sp_configure
GO
Run Code Online (Sandbox Code Playgroud)
如果结果集显示 run_value 为 1,则启用数据库邮件。
如果禁用了数据库邮件选项,则运行以下查询以启用它:
sp_configure 'Database Mail XPs', 1;
GO
RECONFIGURE;
GO
sp_configure 'show advanced', 0;
GO
RECONFIGURE;
GO
Run Code Online (Sandbox Code Playgroud)启用数据库邮件后,要启动数据库邮件外部程序,请在 msdb 数据库上使用以下提到的查询:
USE msdb ;
EXEC msdb.dbo.sysmail_start_sp;
Run Code Online (Sandbox Code Playgroud)要确认数据库邮件外部程序已启动,请运行下面提到的查询:
EXEC msdb.dbo.sysmail_help_status_sp;
Run Code Online (Sandbox Code Playgroud)如果数据库邮件外部程序已启动,则使用以下语句检查邮件队列的状态:
EXEC msdb.dbo.sysmail_help_queue_sp @queue_type = 'mail';
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
9782 次 |
| 最近记录: |