Notifica Mail con Sql Server 2000 Sp4

giovedì 21 ottobre 2010 - 10.30
Tag Elenco Tags  SQL Server 2000

vittosss Profilo | Junior Member

Ciao a tutti.
vi scrivo per chiedervi aiuto circa l'invio di una mail da parte di sql server 2000.
da quel che ho capito ci sono due strade da seguire. una, la + complicata, quella usando i componenti mail di sql partendo dall'installazione di outlook (se non ho capito male) e definendo operatore e una sua mail...
altrimenti c'è una strada che si chiama xp_smtp_sendmail che non necessita di outlook. va copiata la xpsmtp80.dll nella cartella binn di sql e registrata tramite il comando:
exec sp_addextendedproc 'xp_smtp_sendmail', 'xpsmtp80.dll'
e fin qui. tutto ok.

poi ho usato il seguente codice in query analyzer per inviare la mail a me stesso

declare @rc int
exec @rc = master.dbo.xp_smtp_sendmail
@FROM = N'v.c@w.it',
@TO = N'v.c@w.it',
@subject = N'Hello HTML SQL Server SMTP Mail',
@message = N'<HTML><H1>this is some content for the body part
object</H1></HTML>',
@type = N'text/html',
@server = N'smtp.gmail.com'
select RC = @rc
go

torna un valore @rc = 1

e niente mail.

qualcuno gentilmente mi saprebbe dire dove sbaglio o saprebbe darmi qualche consiglio in merito?

ciao e grazie
V.

lbenaglia Profilo | Guru

>da quel che ho capito ci sono due strade da seguire. una, la
>+ complicata, quella usando i componenti mail di sql partendo
>dall'installazione di outlook (se non ho capito male) e definendo
>operatore e una sua mail...
Questa è la soluzione ufficiale.

>altrimenti c'è una strada che si chiama xp_smtp_sendmail che
>non necessita di outlook. va copiata la xpsmtp80.dll nella cartella
>binn di sql e registrata tramite il comando:
>exec sp_addextendedproc 'xp_smtp_sendmail', 'xpsmtp80.dll'
>e fin qui. tutto ok.
Questa è la soluzione di Gert Drapers, autore della xp e che ho utilizzato per anni con estrema soddisfazione.

>@server = N'smtp.gmail.com'
Ora, se ricordo bene l'smtp di gmail utilizza una porta SSL e richiede autenticazione.
Hai provato ad utilizzare l'SMTP del tuo provider oppure quello aziendale?
Purtroppo il sito di Gert non è più disponibile e non ricordo se è possibile specificare esplicitamente una porta e le credenziali di accesso...

>ciao e grazie
Prego.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/

vittosss Profilo | Junior Member

Ciao Lorenzo.
che io sappia non abbiamo smtp locale...

nel frattempo mi sono installato outlook sul db server. mi sono configurato la posta (gmail) ho creato un operatore e gli ho legato una mail.
ho chiamato tutto "Outlook" (operatore, profilo mail) ma...non funziona. ho visto che il servizio Sql Mail nel ramo Support Service non è attivo. quindi sono andato a verificare e ho visto che, se non erro, per farlo funzionare, è necessario andare sull'istanza in Enterprise manger, tasto destro, properties, server setting Sql Mail...dove però mi viene richiesto MAPI....
e se io non ho mapi??...

lbenaglia Profilo | Guru

>nel frattempo mi sono installato outlook sul db server. mi sono
>configurato la posta (gmail) ho creato un operatore e gli ho
>legato una mail.
>ho chiamato tutto "Outlook" (operatore, profilo mail) ma...non
>funziona. ho visto che il servizio Sql Mail nel ramo Support
>Service non è attivo. quindi sono andato a verificare e ho visto
>che, se non erro, per farlo funzionare, è necessario andare sull'istanza
>in Enterprise manger, tasto destro, properties, server setting
>Sql Mail...dove però mi viene richiesto MAPI....
>e se io non ho mapi??...

SQL Mail richiede un client MAPI (come Outlook che tu hai provveduto ad installare).
Personalmente ho sempre evitato di installare Outlook sui miei server SQL dato che la reputo una stronzata
Il problema è l'SMTP che hai scelto. Verifica se è possibile specificare login, pwd e porta alla xp di Gert altrimenti utilizza l'SMTP del tuo Internet Provider.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/

vittosss Profilo | Junior Member

concordo in pieno circa il discorso di installare outlook su un db server. ma, devo raggiungere lo scopo. anche a costo di installare outlook.
ma se installo outlook qual'è il mio mapi? il nome macchina del db?
intanto vedo di cercare documentazione xp_smtp_sendmail

e grazie mille.

lbenaglia Profilo | Guru

>intanto vedo di cercare documentazione xp_smtp_sendmail
Eccola:
http://www.sqldev.net/downloads/xpsmtp/default.html
Come puoi leggere non sono previsti i parametri necessari per autenticarsi ad un server SMTP (si parla della prossima versione, ma il progetto ormai è morto da 8 anni ), pertanto devi utilizzarne uno che non richiede autenticazione (tipicamente quello del tuo internet provider, anche se non è detto).

>e grazie mille.
Prego.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/

vittosss Profilo | Junior Member

se...
ho visto...
devo indagare circa quanto mi dici dell'smtp dell'internet provider.
proviamo per un attimo ad accantonare il discorso smtp e pensiamo di avere exchange.
è comunque sempre indispensabile installare outlook sul db server giusto?
a quel punto però non dovrei trovare problemi...

vittosss Profilo | Junior Member

aggiungo una cosa...
ma se io dovessi avere un sql server 2008...dovessi registrare l'istanza sql 2000 riuscirei a gestire i job?
mi sono spiegato malissimo scusa.
quello che vorrei fare è usare sql server 2008 per inviare le mail dei job falliti su 2000.
ammesso che su 2008 sia facile e fattibile...
come la vedi?
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5