Errore che impedisce l'invio via e-mail di notifiche
Quando cerchiamo di inviare una notifica via email tipo
EXECUTE msdb.dbo.sp_notify_operator @name=N'Ferdinando Caprilli',@subject=N'SQLSERVER - OK processo di shrink dei database',@body=N'Il processo di shrink dei database andato a buon fine.'
otteniamo l'errore:
Msg 14636, Level 16, State 1, Procedure sp_send_dbmail, Line 112
No global profile is configured. Specify a profile name in the @profile_name parameter.
occorre controlla re se c'è un profilo per l'invio di e-mail con :
select * from [msdb].[dbo].[sysmail_principalprofile]
se c'è è sufficente eleggerlo a profilo di default con :
update [msdb].[dbo].[sysmail_principalprofile]
set is_default = 1
where profile_id =
(select max(profile_id)
from [msdb].[dbo].[sysmail_profile]
where [name] = 'def_profile')
Altrimenti occorre crearlo:
-- Create a Database Mail account
EXECUTE msdb.dbo.sysmail_add_account_sp
@account_name = 'Account per notifiche',
@description = 'Account per notifiche',
@email_address = 'EMAILDACUIVOGLIAMORICEVERELAMAIL',
@replyto_address = 'EMAILDACUIVOGLIAMORICEVERELAMAIL',
@display_name = 'EMAILDACUIVOGLIAMORICEVERELAMAIL',
@mailserver_name = 'SERVERDIPOSTASMTP' ;
-- Create a Database Mail profile
EXECUTE msdb.dbo.sysmail_add_profile_sp
@profile_name = 'Profilo per notifiche',
@description = 'Profilo per notifiche' ;
-- Add the account to the profile
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
@profile_name = 'Profilo per notifiche',
@account_name = 'Account per notifiche',
@sequence_number =1 ;
-- Grant access to the profile to all users in the msdb database
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
@profile_name = 'Profilo per notifiche',
@principal_name = 'public',
@is_default = 1 ;