none
Problemi con SQL Server agent - SQLMail / Database mail su SQL Server 2008 SP2. RRS feed

  • Domanda

  •  Ho un SQL server 2008 SP2 installato su un Windows 2008 R2.

     Ho eseguito il wizard per la configurazione della posta elettronica database e sembra essere funzionante, se provo ad inviare la mail di test funziona regolarmente. A questo punto, devo abilitare il profilo di posta elettronica nell'agente e selezionare che voglio usare "Posta elettronica database" come sistema di posta.

     

     Non è possibile farlo: Nel momento in cui dò l'ok per salvare le modifiche se vado a controllare le impostazioni mi ritrovo nuovamente come selezionato "SQLMail". Ho provato a riavviare l'agente, fermarlo e farlo ripartire, cofigurare il profilo e l'account con lo script T-SQL che si trova sul sito MSDN... Niente.

    E' la prima volta che mi capita questa rogna, ne sapete niente? Alla peggio, c'è un modo di rimuove completamente "SQLMail" dall'installazione di SQL??

    mercoledì 15 dicembre 2010 15:41

Risposte

  • Ho eseguito il wizard per la configurazione della posta elettronica database e sembra essere funzionante, se provo ad inviare la mail di test funziona regolarmente. A questo punto, devo abilitare il profilo di posta elettronica nell'agente e selezionare che voglio usare "Posta elettronica database" come sistema di posta.

    Non è possibile farlo: Nel momento in cui dò l'ok per salvare le modifiche se vado a controllare le impostazioni mi ritrovo nuovamente come selezionato "SQLMail". Ho provato a riavviare l'agente, fermarlo e farlo ripartire, cofigurare il profilo e l'account con lo script T-SQL che si trova sul sito MSDN... Niente.

    L'unica cosa che mi viene in mente è provare ad eseguire l'operazione incriminata dal Management Studio con il t-sql, per vedere se ti restituisce qualche errore:

    -- Enabling SQL Agent notification
    USE [msdb]
    EXEC msdb.dbo.sp_set_sqlagent_properties
    @email_save_in_sent_folder=1

    EXEC master.dbo.xp_instance_regwrite
    N'HKEY_LOCAL_MACHINE'
    , N'SOFTWARE\Microsoft\MSSQLServer\SQLServerAgent'
    , N'UseDatabaseMail'
    , N'REG_DWORD'
    , 1

    EXEC master.dbo.xp_instance_regwrite
    N'HKEY_LOCAL_MACHINE'
    , N'SOFTWARE\Microsoft\MSSQLServer\SQLServerAgent'
    , N'DatabaseMailProfile'
    , N'REG_SZ'
    , N'SQLMail Profile'

    La fonte é: http://www.mssqltips.com/tip.asp?tip=1736

    David
    mercoledì 15 dicembre 2010 21:16
  • Ho verificato nei miei server, che sono versione 2008, e la chiave "SQLServerAgent" la trovo in un percorso leggermente differente da quello indicato nell'articolo:

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.MSSQLSERVER\SQLServerAgent]


    David
    giovedì 16 dicembre 2010 09:20

Tutte le risposte

  • Ho eseguito il wizard per la configurazione della posta elettronica database e sembra essere funzionante, se provo ad inviare la mail di test funziona regolarmente. A questo punto, devo abilitare il profilo di posta elettronica nell'agente e selezionare che voglio usare "Posta elettronica database" come sistema di posta.

    Non è possibile farlo: Nel momento in cui dò l'ok per salvare le modifiche se vado a controllare le impostazioni mi ritrovo nuovamente come selezionato "SQLMail". Ho provato a riavviare l'agente, fermarlo e farlo ripartire, cofigurare il profilo e l'account con lo script T-SQL che si trova sul sito MSDN... Niente.

    L'unica cosa che mi viene in mente è provare ad eseguire l'operazione incriminata dal Management Studio con il t-sql, per vedere se ti restituisce qualche errore:

    -- Enabling SQL Agent notification
    USE [msdb]
    EXEC msdb.dbo.sp_set_sqlagent_properties
    @email_save_in_sent_folder=1

    EXEC master.dbo.xp_instance_regwrite
    N'HKEY_LOCAL_MACHINE'
    , N'SOFTWARE\Microsoft\MSSQLServer\SQLServerAgent'
    , N'UseDatabaseMail'
    , N'REG_DWORD'
    , 1

    EXEC master.dbo.xp_instance_regwrite
    N'HKEY_LOCAL_MACHINE'
    , N'SOFTWARE\Microsoft\MSSQLServer\SQLServerAgent'
    , N'DatabaseMailProfile'
    , N'REG_SZ'
    , N'SQLMail Profile'

    La fonte é: http://www.mssqltips.com/tip.asp?tip=1736

    David
    mercoledì 15 dicembre 2010 21:16
  • Grazie della risposta.

    Verifico e posto il feedback.

    giovedì 16 dicembre 2010 08:20
  • Stavo controllando lo script prima di lanciarlo e, a quanto capisco, lo script sembra impostare il valore di una chiave del registro di sistema in modo da configurare l'agent per l'uso di DatabaseMail.

    Problema: Nel nostro registry la chiave

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\SQLServerAgent

    non c'è. Ho controllato anche in un altro sistema gemello in cui la configurazione funziona invece regolarmente e anche in questo sistema la chiave di registro non è presente.

    La chiave di registro

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\

    presenta 3 sottochiavi, "Client", "MSSQLServer" e "Setup" ma nessun "SQLServerAgent".

    Che faccio? Lancio lo stesso?

    giovedì 16 dicembre 2010 08:54
  • Ho verificato nei miei server, che sono versione 2008, e la chiave "SQLServerAgent" la trovo in un percorso leggermente differente da quello indicato nell'articolo:

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.MSSQLSERVER\SQLServerAgent]


    David
    giovedì 16 dicembre 2010 09:20
  •  Ok, modificato la query con il percorso che mi hai dato ed effettivamente mi ha restituito questo messaggio di errore:

    Msg 22002, Level 16, State 1, Line 0
    RegCreateKeyEx() ha restituito l'errore 5, 'Access is denied.'

     

     Sembra che l'utente non abbia i permessi per modificare il registry ma è piuttosto strano perchè è lo stesso utente che fa girare i servizi SQL sugli altri server Windows2008 R2 e che non hanno avuto lo stesso problema. Cmq ho modificato a mano la chiave di registro che mi hai indicato, impostando il valore ad "1" ed ora sembra essere a posto.

     Ti ho già segnato il post come risposta, magari aggiornalo con il percorso corretto della chiave.

     Grazie mille!

     

     

    giovedì 16 dicembre 2010 10:23