Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум на Исходниках.RU > Базы данных: Общие вопросы > Почта в состоянии ожидания |
Автор: Bas 08.11.18, 13:11 |
res.csv (, : 974)
Все создавал через скрипт. <{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}> -- Переменные для хранения идентификаторов (профиля и учетной записи). DECLARE @ProfileId INT, @AccountId INT; -- Создаем новый профиль компонента Database Mail. EXECUTE msdb.dbo.sysmail_add_profile_sp -- Имя нового профиля. @profile_name = 'TestProfile', -- Описание нового профиля (NVARCHAR(256)). Необязательный. @description = N'Тестовый профиль', -- Параметр возвращает идентификатор нового профиля. Необязательный. @profile_id = @ProfileId OUTPUT; -- Создаем в Database Mail SMTP-аккаунт для отправки писем. EXECUTE msdb.dbo.sysmail_add_account_sp -- Имя добавляемой учетной записи. @account_name = 'TestAccount', -- Адрес электронной почты, от имени которого отправляется сообщение. @email_address = 'Test@TestServer.ru', -- Имя, отображаемое в письме электронной почты в поле "От:". @display_name = N'Database Mail', -- Обратный адрес сообщений, отправленных с этой учетной записи. @replyto_address = 'Test@TestServer.ru', -- Описание учетной записи (NVARCHAR(256)). Необязательный. @description = N'Тестовая учётная запись SMTP сервера', -- Имя или IP-адрес почтового SMTP-сервера. @mailserver_name = 'TestServer', --Тип сервера электронной почты. По умолчанию 'SMTP'. @mailserver_type = 'SMTP', -- Номер порта SMTP-сервера. По умолчанию 25. @port = 25, -- Имя пользователя для входа на сервер электронной почты. @username = 'TestUser', -- Пароль для входа на сервер электронной почты. @password = 'Password', -- Указывает, посылать ли почту SMTP серверу с помощью учетных данных Database Engine. По умолчанию 0. @use_default_credentials = 0, -- Включение SSL. Если SMTP-сервер использует защиту SSL, то указываем 1. По умолчанию 0. @enable_ssl = 0, -- Параметр возвращает идентификатор новой учетной записи. Необязательный. @account_id = @AccountId OUTPUT; -- Подключаем учетную запись к профилю компонента Database Mail. EXECUTE msdb.dbo.sysmail_add_profileaccount_sp -- Идентификатор профиля, к которому добавляется учетная запись. @profile_id = @ProfileId, -- Имя профиля, к которому добавляется учетная запись. @profile_name = 'TestProfile', -- Можно указывать либо параметр profile_id, либо параметр profile_name. -- Идентификатор учетной записи, которая добавляется к профилю. @account_name = 'TestAccount', -- Имя учетной записи, которая добавляется к профилю. @account_id = @AccountId, -- Можно указывать либо параметр account_id, либо параметр account_name. -- Порядковый номер учетной записи в профиле. @sequence_number = 1; --Предоставление необходимых прав доступа к профилю Database Mail. EXECUTE msdb.dbo.sysmail_add_principalprofile_sp -- Идентификатор пользователя или роли в базе данных msdb. 0-этот профиль становится открытым. @principal_id = 0, -- Имя пользователя или роли в базе данных msdb. 'public'-этот профиль становится открытым. @principal_name = 'public', -- Можно указывать либо параметр principal_id, либо principal_name. -- Идентификатор профиля DBMail, который следует ассоциировать с пользователем или ролью базы данных. @profile_id = @ProfileId, -- Название профиля DBMail, который следует ассоциировать с пользователем или ролью базы данных. @profile_name = 'TestProfile', -- Можно указывать либо параметр profile_id, либо profile_name. -- Указываем, что профиль является профилем по умолчанию. @is_default = 1; --Посмотрим на значения идентификаторов. SELECT @ProfileId AS ProfileId, @AccountId AS AccountId [CODE=SQL] [/CODE] Цитата Почту не удалось доставить получателям из-за сбоя почтового сервера. (Отправка сообщения через учетную запись 5 (2018-11-08T12:49:00). Сообщение об исключении: Невозможно соединиться с почтовым сервером. (Этот хост неизвестен). ) Как узнать какой хост ему не известен?. Или я гдесь накосячил. Эта тема была разделена из темы "не виден Компонент Database Mail" |
Автор: ^D^ima 08.11.18, 13:16 |
Так а какие ты данные настроил и как, покажи |
Автор: Bas 08.11.18, 13:18 |
Уже добавил скрипт создания. Добавлено Наверно дело в SMTP сервере (никогда его не настраивал). Добавлено <{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}> exec msdb.dbo.sysmail_help_queue_sp ; go Выдал Цитата 1 mail 0 INACTIVE 2018-11-08 11:57:27.310 2018-11-08 11:57:27.310 2 status 0 INACTIVE 2018-11-08 11:57:27.293 2018-11-08 11:57:27.293 Надо сделать его активным? |
Автор: ^D^ima 08.11.18, 19:42 |
Учетная запись 5 какие имеет почтовые настройки? |
Автор: Bas 08.11.18, 20:53 |
как это проверить на стороне сервера ? |
Автор: Bas 09.11.18, 08:28 |
Это где ? см пост первый. Нет у меня этого. |
Автор: ^D^ima 09.11.18, 09:25 |
твоя-же ссылка, шаг 5 https://info-comp.ru/sisadminst/545-databas...sql-server.html |
Автор: Bas 09.11.18, 10:31 |
^D^ima, у меня Компонент Database Mail НИГДЕ не высвечивается ни в одной ветке обозревателя объектов его нет. |
Автор: ^D^ima 09.11.18, 14:12 |
Здесь нужно реальный адрес сервера и авторизацию использовать. Можно попробовать от публичного почтового сервиса - мейла, яндекса https://help.mail.ru/mail-help/mailer/popsmtp Адрес сервера smtp.mail.ru Пользователь Полное имя почтового ящика, включая логин, @ и домен Пароль Пароль, который вы используете для входа в почтовый ящик SMTP — 465 (протокол шифрования SSL/TLS) |
Автор: Bas 10.11.18, 10:14 |
Я запутался. Можно пример, рабочий? |
Автор: ^D^ima 13.11.18, 08:38 |
Ты хочешь отправить письмо, но т.к. сам SQL не является почтовым сервером, то он как почтовый клиент, например outlook, отправляет письма через настроенную учетную запись публичной почты. Тебе нужно: 1 Зарегистрировать почту на mail.ru https://account.mail.ru/signup?rf=auth.mail.ru&from=main 2 mailserver_name = 'smtp.mail.ru' 3 username = 'Имя твоего зарегистрированного ящика' 4 password = 'пароль твоего зарегистрированного ящика' 5 port = 465 6 enable_ssl = 1 7 email_address = 'Имя твоего зарегистрированного ящика' Добавлено В теории твой SQL сам может выступать сервером, но без определенных настроек все письма будут попадать или в спам или вообще, что скорее всего, принимающий сервер будет сразу отказывать в приеме. Это прокатило бы в 2000 годах, сейчас все жестко, борьба со спамом. Если тебе нужно в пределах организации рассылать, можно поставить Exchange сервер и через него слать |
Автор: Bas 19.11.18, 12:31 |
Остались у кого-то (c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\) DatabaseMail90.exe DatabaseMailengine.dll DatabaseMailprotocols.dll для 2005 сервера? |
Автор: ^D^ima 19.11.18, 14:45 |
? https://www.microsoft.com/ru-ru/download/de...s.aspx?id=21844 |
Автор: Bas 22.11.18, 13:04 |
Там и искал, но не нашел тамочки. Добавлено Какие варианты отправки на мыло почты есть в MS сервере? Писать веб интерфейс или через VB6 пробовать? Параметры оценки - Время, цена, качество... |
Автор: ^D^ima 22.11.18, 13:38 |
Bas Если у тебя экспресс версия. там отправки почты может не быть. Это что означает? Добавлено Самый простой вариант через telnet отправить, но стоит ли? |
Автор: Bas 23.11.18, 12:23 |
Таки да. Но, если эти 3-и файла есть то ... я не хакер, просто надо было. Добавлено Учусь. Не сталкивался , поэтому и спрашиваю |
Автор: ^D^ima 23.11.18, 13:49 |
Bas Не проще поставить не Express версию? |
Автор: Bas 29.11.18, 22:52 |
Таки и стоит бесплатнпая |
Автор: ^D^ima 30.11.18, 06:04 |
|
Автор: Bas 13.12.18, 10:47 |
Она |