sysmail_stop_sp (Transact-SQL)

通过停止外部程序所用的 Service Broker 对象来停止数据库邮件。

主题链接图标Transact-SQL 语法约定

语法

sysmail_stop_sp

参数

返回代码值

0(成功)或 1(失败)

注释

此存储过程位于 msdb 数据库中。

此存储过程可停止保留待发消息请求的数据库邮件队列,并对外部程序禁用 Service Broker 激活。

当队列停止后,数据库邮件外部程序将不会处理消息。通过此存储过程可以停止数据库邮件,以进行故障排除或维护。

若要启动数据库邮件,请使用 sysmail_start_sp。请注意,停止 Service Broker 对象后,sp_send_dbmail 仍然可以接收邮件。

注意注意

此存储过程只停止用于数据库邮件的队列,它不会停用数据库中的 Service Broker 消息传递功能。有关停用 Service Broker 消息传递的详细信息,请参阅如何在数据库中停用 Service Broker 消息传递 (Transact-SQL)。此存储过程不会禁用数据库邮件扩展存储过程以减少外围应用。要禁用扩展存储过程,请参阅 sp_configure 系统存储过程的 Database Mail XPs 选项

权限

此过程的执行权限默认为 sysadmin 固定服务器角色的成员。

示例

以下示例显示如何停止 msdb 数据库中的数据库邮件。该示例假设数据库邮件已经启用。

USE msdb ;
GO

EXECUTE dbo.sysmail_stop_sp ;
GO