sql2008数据库邮件重启服务器后不能用

qing151515 2018-01-12 11:27:11
各位大神,原来数据库邮件功能一直在正常使用,前天晚上重启了服务器后,就用不了,发送测试邮件在查看数据库邮件里也没任何提示,重新配置了数据库邮件也是一样。正常发送邮件的话在日志里都会有“数据库邮件进程已启动”,“数据库邮件进程正在关闭”,但现在这个没有这个提示,也没其他信息,是数据库邮件功能启动不了吗?
...全文
1541 32 打赏 收藏 转发到动态 举报
写回复
用AI写文章
32 条回复
切换为时间正序
请发表友善的回复…
发表回复
beadly 2018-01-16
  • 打赏
  • 举报
回复
引用 31 楼 zjcxc 的回复:
这个服务我装的所有 服务器都是禁用的,我自己的电脑也是,没遇到过楼主的这种情况,当然,数据库邮件功能也极少用 不管怎么样,解决了就好
这些服务也是禁用的。
引用 26 楼 zjcxc 的回复:
看起来是没有自动激活 Queue 上的处理存储过程 执行下面这个之后盾盾返回值是什么 DECLARE @re int; EXEC @re = msdb.dbo.[sp_sysmail_activate]; SELECT @re; 然后再确认一下 下面两个查询的结果 SELECT COUNT(*) FROM ExternalMailQueue SELECT COUNT(*) FROM sys.transmission_queue
结果为0
zjcxc 2018-01-15
  • 打赏
  • 举报
回复
这个服务我装的所有 服务器都是禁用的,我自己的电脑也是,没遇到过楼主的这种情况,当然,数据库邮件功能也极少用 不管怎么样,解决了就好
qing151515 2018-01-15
  • 打赏
  • 举报
回复
问题找到了,原来是SQL Server Browser 服务重启服务器后没有自动启动,设为了手动,不过我也一直以为数据库邮件是不用用到这个服务的
qing151515 2018-01-15
  • 打赏
  • 举报
回复
引用 28 楼 yenange 的回复:
先装个 foxmail, 测试下在 foxmail 上是否能正常发送邮件?
在outlook下是能正常发送的
吉普赛的歌 2018-01-15
  • 打赏
  • 举报
回复
先装个 foxmail, 测试下在 foxmail 上是否能正常发送邮件?
qing151515 2018-01-15
  • 打赏
  • 举报
回复
引用 26 楼 zjcxc 的回复:
看起来是没有自动激活 Queue 上的处理存储过程 执行下面这个之后盾盾返回值是什么 DECLARE @re int; EXEC @re = msdb.dbo.[sp_sysmail_activate]; SELECT @re; 结果是:0 然后再确认一下 下面两个查询的结果 SELECT COUNT(*) FROM ExternalMailQueue 结果是:45 SELECT COUNT(*) FROM sys.transmission_queue
结果:0
zjcxc 2018-01-15
  • 打赏
  • 举报
回复
看起来是没有自动激活 Queue 上的处理存储过程 执行下面这个之后盾盾返回值是什么 DECLARE @re int; EXEC @re = msdb.dbo.[sp_sysmail_activate]; SELECT @re; 然后再确认一下 下面两个查询的结果 SELECT COUNT(*) FROM ExternalMailQueue SELECT COUNT(*) FROM sys.transmission_queue
beadly 2018-01-13
  • 打赏
  • 举报
回复
引用 24 楼 qing151515 的回复:
[quote=引用 23 楼 zjcxc 的回复:] 李昌镐一下 ExternalMailQueue, 看看 message_body 的内容,是否包含你最新的测试数据( 重启后的) 如果是,那么邮件至少在队列中了,继续看下这个里面有没有数据 SELECT * FROM sys.dm_broker_activated_tasks 如果有,procedure_name 列值是否为 sp_sysmail_activate, 如果是,把它 kill 掉, 估计是处理卡住了
发送测试邮件,ExternalMailQueue会多一行数据,但SELECT * FROM sys.dm_broker_activated_tasks一直没数据[/quote] 我的也是这样
qing151515 2018-01-12
  • 打赏
  • 举报
回复
当然启动了,作业那些都正常
zjcxc 2018-01-12
  • 打赏
  • 举报
回复
sql server agent 启动了么?
qing151515 2018-01-12
  • 打赏
  • 举报
回复
引用 23 楼 zjcxc 的回复:
李昌镐一下 ExternalMailQueue, 看看 message_body 的内容,是否包含你最新的测试数据( 重启后的) 如果是,那么邮件至少在队列中了,继续看下这个里面有没有数据 SELECT * FROM sys.dm_broker_activated_tasks 如果有,procedure_name 列值是否为 sp_sysmail_activate, 如果是,把它 kill 掉, 估计是处理卡住了
发送测试邮件,ExternalMailQueue会多一行数据,但SELECT * FROM sys.dm_broker_activated_tasks一直没数据
zjcxc 2018-01-12
  • 打赏
  • 举报
回复
李昌镐一下 ExternalMailQueue, 看看 message_body 的内容,是否包含你最新的测试数据( 重启后的) 如果是,那么邮件至少在队列中了,继续看下这个里面有没有数据 SELECT * FROM sys.dm_broker_activated_tasks 如果有,procedure_name 列值是否为 sp_sysmail_activate, 如果是,把它 kill 掉, 估计是处理卡住了
beadly 2018-01-12
  • 打赏
  • 举报
回复
现在也麻烦了,也不报错了,
beadly 2018-01-12
  • 打赏
  • 举报
回复
晕了,现在发现也不报错了
引用 14 楼 z10843087 的回复:
[quote=引用 10 楼 qing151515 的回复:] @beadly 问题还不太一样,你的发邮件还是提示错误,测试邮件也能发,我是都不能发,也没提示。 @OwenZeng_DBA 执行结果如下: EXEC msdb.dbo.sysmail_help_status_sp; 结果:STARTED EXEC msdb.dbo.sysmail_help_queue_sp @queue_type = 'mail'; 结果:length 35 state INACTIVE
--你把队列停止了 EXEC msdb.dbo.sysmail_stop_sp --然后再开启试试呢 EXEC msdb.dbo.sysmail_start_sp[/quote] EXEC msdb.dbo.sysmail_help_queue_sp @queue_type = 'mail' 后 length: 3 state:RECEIVES_OCCURRING
qing151515 2018-01-12
  • 打赏
  • 举报
回复
引用 18 楼 zjcxc 的回复:
USE msdb;
SELECT TOP 10 * FROM sysmail_event_log ORDER BY log_date DESC;
SELECT COUNT(*) FROM ExternalMailQueue
SELECT COUNT(*) FROM sys.transmission_queue


2018-01-10 17:40:08.827 之后当晚重新服务器后没有开启数据库邮件的提示了
qing151515 2018-01-12
  • 打赏
  • 举报
回复
引用 17 楼 z10843087 的回复:
EXEC msdb.dbo.sysmail_help_queue_sp @queue_type = 'mail'; 这个现在是什么状态 ,,你现在试试发个邮件,有什么提示
状态是:INACTIVE 在发送测试电子邮件那发了之后,在查看数据库邮件日志那没有任何提示
zjcxc 2018-01-12
  • 打赏
  • 举报
回复
USE msdb;
SELECT TOP 10 * FROM sysmail_event_log ORDER BY log_date DESC;
SELECT COUNT(*) FROM ExternalMailQueue
SELECT COUNT(*) FROM sys.transmission_queue
OwenZeng_DBA 2018-01-12
  • 打赏
  • 举报
回复
EXEC msdb.dbo.sysmail_help_queue_sp @queue_type = 'mail'; 这个现在是什么状态 ,,你现在试试发个邮件,有什么提示
qing151515 2018-01-12
  • 打赏
  • 举报
回复
引用 14 楼 z10843087 的回复:
[quote=引用 10 楼 qing151515 的回复:] @beadly 问题还不太一样,你的发邮件还是提示错误,测试邮件也能发,我是都不能发,也没提示。 @OwenZeng_DBA 执行结果如下: EXEC msdb.dbo.sysmail_help_status_sp; 结果:STARTED EXEC msdb.dbo.sysmail_help_queue_sp @queue_type = 'mail'; 结果:length 35 state INACTIVE
--你把队列停止了 EXEC msdb.dbo.sysmail_stop_sp --然后再开启试试呢 EXEC msdb.dbo.sysmail_start_sp[/quote] 试了也是不行
beadly 2018-01-12
  • 打赏
  • 举报
回复
引用 14 楼 z10843087 的回复:
[quote=引用 10 楼 qing151515 的回复:] @beadly 问题还不太一样,你的发邮件还是提示错误,测试邮件也能发,我是都不能发,也没提示。 @OwenZeng_DBA 执行结果如下: EXEC msdb.dbo.sysmail_help_status_sp; 结果:STARTED EXEC msdb.dbo.sysmail_help_queue_sp @queue_type = 'mail'; 结果:length 35 state INACTIVE
--你把队列停止了 EXEC msdb.dbo.sysmail_stop_sp --然后再开启试试呢 EXEC msdb.dbo.sysmail_start_sp[/quote] 也是不行的
加载更多回复(12)

22,206

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧