Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум на Исходниках.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 @
Как узнать какой хост ему не известен?. Или я гдесь накосячил.

Так а какие ты данные настроил и как, покажи

Автор: Bas 08.11.18, 13:18
Цитата ^D^ima @
Так а какие ты данные настроил и как, покажи

Уже добавил скрипт создания.

Добавлено
Наверно дело в 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
Цитата ^D^ima @
Учетная запись 5 какие имеет почтовые настройки?


как это проверить на стороне сервера ?

Автор: Bas 09.11.18, 08:28
Цитата ^D^ima @
тут у тебя что?

Это где ? см пост первый. Нет у меня этого.

Автор: ^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
Цитата Bas @
    @mailserver_name = 'TestServer',

Цитата Bas @
      @username = 'TestUser',

Цитата Bas @
        @password = 'Password',

Здесь нужно реальный адрес сервера и авторизацию использовать.

Можно попробовать от публичного почтового сервиса - мейла, яндекса

https://help.mail.ru/mail-help/mailer/popsmtp

Адрес сервера smtp.mail.ru
Пользователь Полное имя почтового ящика, включая логин, @ и домен
Пароль Пароль, который вы используете для входа в почтовый ящик

Цитата Bas @
@port = 25,

SMTP — 465 (протокол шифрования SSL/TLS)

Автор: Bas 10.11.18, 10:14
Цитата ^D^ima @
Здесь нужно реальный адрес сервера и авторизацию использовать.

Я запутался. :wacko: :blink: Можно пример, рабочий? :blush:

Автор: ^D^ima 13.11.18, 08:38
Цитата Bas @
Я запутался. Можно пример, рабочий?

Ты хочешь отправить письмо, но т.к. сам 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
Цитата ^D^ima @
?

8-) :no-sad:
Там и искал, но не нашел тамочки. :wacko:

Добавлено
Какие варианты отправки на мыло почты есть в MS сервере? Писать веб интерфейс или через VB6 пробовать? Параметры оценки - Время, цена, качество...

Автор: ^D^ima 22.11.18, 13:38
Bas
Если у тебя экспресс версия. там отправки почты может не быть.

Цитата Bas @
Какие варианты отправки на мыло почты есть в MS сервере?

Это что означает?

Добавлено
Самый простой вариант через telnet отправить, но стоит ли?

Автор: Bas 23.11.18, 12:23
Цитата ^D^ima @
там отправки почты может не быть

Таки да. Но, если эти 3-и файла есть то ... я не хакер, просто надо было.

Добавлено
Цитата ^D^ima @
Это что означает?

Учусь.

Цитата ^D^ima @
Самый простой вариант через telnet отправить, но стоит ли?

Не сталкивался :-? , поэтому и спрашиваю

Автор: ^D^ima 23.11.18, 13:49
Bas
Не проще поставить не Express версию?

Автор: Bas 29.11.18, 22:52
Цитата ^D^ima @
Не проще поставить не Express версию?

Таки и стоит бесплатнпая

Автор: ^D^ima 30.11.18, 06:04
Цитата Bas @
Таки и стоит бесплатнпая


Цитата ^D^ima @
не Express

Автор: Bas 13.12.18, 10:47
Она

Powered by Invision Power Board (https://www.invisionboard.com)
© Invision Power Services (https://www.invisionpower.com)