Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 xp_sendmail  [new]
YP
Member

Откуда:
Сообщений: 89
Пытаюсь настроить рассылку почты на новом сервере. Для юзера под которым стартует MSSQL и SQLServerAgent создал почтовый профиль. В EM настроил SQLServerAgent и SQLMail (тесты проходят - тоесть почтовая служба стартует). Из пакета и напрямую оператору письма отсылаются, а вот прямое изпользование xp_sendmail выдает:

Server: Msg 18025, Level 16, State 1, Line 0
xp_sendmail: failed with mail error 0x80040111

Где грабли? Спасибо.
24 фев 04, 11:23    [548270]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
YP
Member

Откуда:
Сообщений: 89
Вопрос снимается. Разобрался. Оказалось надо вручную стартануть SQL Mail почемуто?????
24 фев 04, 12:17    [548386]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
rst
Member

Откуда: Йобурк
Сообщений: 1005
bol

The mail component of SQL Server can then be enabled to start automatically when the SQL Server Agent service is started. Alternatively, the mail component can be started and stopped at will using either SQL Server Enterprise Manager, or the xp_startmail, xp_stopmail, and xp_sendmail stored procedures.

When the mail component of SQL Server is running, it can be used to:
Send e-mail from Transact-SQL batches, scripts, stored procedures, and triggers using xp_send_mail.
24 фев 04, 12:36    [548423]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: xp_sendmail  [new]
teCa
Member

Откуда:
Сообщений: 590
YP
Вопрос снимается. Разобрался. Оказалось надо вручную стартануть SQL Mail почемуто?????


Где стартануть SQL Mail? У меня такая же ошибка(
11 сен 09, 13:39    [7647429]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
Glory
Member

Откуда:
Сообщений: 104760
teCa
YP
Вопрос снимается. Разобрался. Оказалось надо вручную стартануть SQL Mail почемуто?????


Где стартануть SQL Mail? У меня такая же ошибка(

А следующий ответ было не судьба прочитать ?
11 сен 09, 13:42    [7647451]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
teCa
Member

Откуда:
Сообщений: 590
Да я прочитал, только вот SQL Agent у меня запущен, ошибка один фиг осталось. Или я чего то не допонял?
11 сен 09, 13:48    [7647489]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
Glory
Member

Откуда:
Сообщений: 104760
teCa
Да я прочитал, только вот SQL Agent у меня запущен, ошибка один фиг осталось. Или я чего то не допонял?

Еще раз цитирую
"Alternatively, the mail component can be started and stopped at will using either SQL Server Enterprise Manager, or the xp_startmail, xp_stopmail"
11 сен 09, 13:51    [7647501]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
teCa
Member

Откуда:
Сообщений: 590
Также, агент запущен из под моей доменной учетки, на этой машинке создан MAPI профиль в оутлук.
11 сен 09, 13:51    [7647505]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
neponyanto
Guest
teCa,

Если речь идет о MS SQL 2005 и выше, то:
Включаем Database Mail XPs:
sp_configure 'Database Mail XPs',1
reconfigure with override

Юзаю sp_send_dbmail, более функционально, например если нужно в HTML-формате.

EXECUTE [msdb].[dbo].[sp_send_dbmail]
@profile_name = 'SQLSERVERPROFILE'
,@recipients = '<email>'
,@body = '<текст сообщения>'
,@subject = '<тема>'
,@body_format='html'

Профайл создается в <Server>\Management\Database Mail
11 сен 09, 13:53    [7647519]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
teCa
Member

Откуда:
Сообщений: 590
Забыл сказать, Сервер 2000.
11 сен 09, 13:56    [7647546]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
teCa
Member

Откуда:
Сообщений: 590
Делаю по примеру из БОЛа

EXEC xp_stopmail

Server: Msg 17966, Level 16, State 1, Line 0
xp_startmail: SQL Mail session is not started.

EXEC xp_startmail @user ='user', @password='password'

Server: Msg 18025, Level 16, State 1, Line 0
xp_startmail: failed with mail error 0x80040111
11 сен 09, 13:58    [7647563]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
Glory
Member

Откуда:
Сообщений: 104760
teCa
Делаю по примеру из БОЛа

EXEC xp_stopmail

Server: Msg 17966, Level 16, State 1, Line 0
xp_startmail: SQL Mail session is not started.

EXEC xp_startmail @user ='user', @password='password'

Server: Msg 18025, Level 16, State 1, Line 0
xp_startmail: failed with mail error 0x80040111


0x80040111 - это MAPI_E_LOGON_FAILED
Проверяйте настройки вашего SQL Mail
11 сен 09, 14:01    [7647597]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
teCa
Member

Откуда:
Сообщений: 590
Заработало только после того как запустил сам сервис скуля от своей учетки.(до этого от моей учетки работал только агент)

Теперь такой вопрос, подсунуть переменную этой функции. пытаюсь сделать так:

EXEC master.dbo.xp_sendmail 'e-mail@domain.com', @ExecResult

Мне сообщает:

Server: Msg 137, Level 15, State 2, Line 1
Must declare the variable '@ExecResult'.

Хотя переменная объявлена в начале скрипта.
11 сен 09, 14:16    [7647723]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
Glory
Member

Откуда:
Сообщений: 104760
teCa
Заработало только после того как запустил сам сервис скуля от своей учетки.(до этого от моей учетки работал только агент)

Теперь такой вопрос, подсунуть переменную этой функции. пытаюсь сделать так:

EXEC master.dbo.xp_sendmail 'e-mail@domain.com', @ExecResult

Мне сообщает:

Server: Msg 137, Level 15, State 2, Line 1
Must declare the variable '@ExecResult'.

Хотя переменная объявлена в начале скрипта.

И где же команда declare @ExecResult в вашем скрипте ?
11 сен 09, 14:17    [7647742]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
teCa
Member

Откуда:
Сообщений: 590
declare @BaseName varchar(255)
declare @BackupName varchar(255)
declare @ExecResult varchar(255)
declare @FolderForBackup varchar(255)
declare @DB_id varchar(255)
declare @ExcludedNames varchar(255)
11 сен 09, 14:19    [7647752]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
Glory
Member

Откуда:
Сообщений: 104760
teCa
declare @BaseName varchar(255)
declare @BackupName varchar(255)
declare @ExecResult varchar(255)
declare @FolderForBackup varchar(255)
declare @DB_id varchar(255)
declare @ExcludedNames varchar(255)

Вы так и будете частями скрипт публиковать ?
11 сен 09, 14:20    [7647755]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
teCa
Member

Откуда:
Сообщений: 590
Извините

declare @BaseName varchar(255)
declare @BackupName varchar(255)
declare @ExecResult varchar(255)
declare @FolderForBackup varchar(255)
declare @DB_id varchar(255)
declare @ExcludedNames varchar(255)

Set @ExcludedNames='UPPWork'

set @FolderForBackup='D:\SQL_Backup\'

DECLARE DataBases_cursor CURSOR FOR 
select name, dbid
from sysdatabases
where name<>'tempdb'

OPEN DataBases_cursor
FETCH FROM DataBases_cursor
INTO @BaseName, @DB_id
IF NOT (@BaseName IN(@ExcludedNames))
BEGIN
print ''
EXECUTE usrBackupBase @FolderForBackup, @BaseName, @ExecResult OUTPUT
--print @ExecResult 
END

WHILE @@FETCH_STATUS = 0
BEGIN
FETCH NEXT FROM DataBases_cursor
INTO @BaseName, @DB_id
IF NOT (@BaseName IN (@ExcludedNames))
BEGIN
print ''
EXECUTE usrBackupBase @FolderForBackup, @BaseName, @ExecResult OUTPUT
--print @ExecResult
END
END

close DataBases_cursor
deallocate DataBases_cursor
GO

EXEC master.dbo.xp_sendmail 'apatkin.iv@alidi.ru', @ExecResult
11 сен 09, 14:20    [7647760]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
Glory
Member

Откуда:
Сообщений: 104760
Вы знаете, какую роль играет GO в скриптах для QA ?
11 сен 09, 14:22    [7647776]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
teCa
Member

Откуда:
Сообщений: 590
Теперь знаю) Еще вопрос касаемо этой процедуры, есть htm файл, каким образом хтм страничку можно отправить телом сообщения? Может это можно сделать другой процедурой?
14 сен 09, 09:49    [7653685]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
teCa
Member

Откуда:
Сообщений: 590
Up
14 сен 09, 14:58    [7655815]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
teCa,
а что ап ? открыть бол и посмотреть все парметры процедуры совсем влом ,да ? там и пример есть тело письма сделать хтмл
14 сен 09, 15:13    [7655955]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
teCa
Member

Откуда:
Сообщений: 590
Ткните носом, в упор не вижу в BOL в описании процедуры xp_sendmail, ни слова про хтмл, тем более примера.
14 сен 09, 15:31    [7656123]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
teCa
Ткните носом, в упор не вижу в BOL в описании процедуры xp_sendmail, ни слова про хтмл, тем более примера.


честно ?
14 сен 09, 16:06    [7656392]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
хотя ,наверно.Вам больше подойдет вот ето sp_send_dbmail
-------------------------------------
Jedem Das Seine
14 сен 09, 16:10    [7656425]     Ответить | Цитировать Сообщить модератору
 Re: xp_sendmail  [new]
teCa
Member

Откуда:
Сообщений: 590
Maxx
хотя ,наверно.Вам больше подойдет вот ето sp_send_dbmail
-------------------------------------
Jedem Das Seine


Could not find stored procedure 'msdb.dbo.sp_send_dbmail'. Походу она в 2005 сервере присутствует.
14 сен 09, 16:36    [7656610]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить