Published on

May 21, 2022

Cómo habilitar SQL Server Agent para enviar correos electrónicos

Database Mail es una característica poderosa en SQL Server que permite a las aplicaciones de base de datos enviar correos electrónicos a través de SMTP. Sin embargo, es posible que encuentre un problema en el que SQL Server Agent no pueda enviar correos electrónicos al completar trabajos en segundo plano o a operadores según la configuración de las alertas. Este artículo le guiará a través del proceso de habilitar SQL Server Agent para enviar correos electrónicos.

Configuración de Database Mail en SQL Server Agent

Cuando configure Database Mail, hay dos objetos clave que deben configurarse: el Perfil de correo y la Cuenta de correo. El perfil de correo es una colección ordenada de cuentas de correo que proporciona una capa de abstracción entre las aplicaciones que llaman al correo de la base de datos y las cuentas de correo reales.

Un perfil de correo puede definirse como un perfil público o privado. Un perfil público está disponible para el uso de cualquier principal, mientras que un perfil privado solo está disponible para los miembros del rol de sysadmin y otros principales con los permisos adecuados. En el contexto de SQL Agent, cuando un perfil es privado, se debe otorgar privilegios a la cuenta de servicio de SQL Agent para usar el perfil.

Cuando las aplicaciones llaman al correo de la base de datos, se refieren a los perfiles en lugar de cuentas de correo específicas. Esto significa que el perfil de correo puede estar asociado con varias cuentas, lo que proporciona tolerancia a fallos siempre que haya configurado cuentas separadas utilizando servidores de correo diferentes. También puede tener más de un perfil de correo y decidir cuál debe ser el predeterminado.

SQL Server Agent no puede enviar correo

Si SQL Server Agent no puede llamar a Database Mail, es posible que encuentre un error similar al que se muestra a continuación:

Agente no puede enviar correo electrónico

La solución para este problema es bastante simple: debe habilitar el perfil de correo en las propiedades de SQL Server Agent.

Pasos para habilitar el perfil de correo

  1. Abra SQL Server Management Studio y vaya a Object Explorer.
  2. Haga clic derecho en SQL Server Agent y seleccione Propiedades en el menú desplegable.
  3. En la ventana Propiedades de SQL Server Agent, seleccione la página Sistema de alerta.
  4. En el panel derecho, verá que el perfil de correo no está habilitado de forma predeterminada.
  5. Habilite el perfil de correo marcando la casilla junto a “Habilitar perfil de correo” y seleccionando el perfil que creó al configurar Database Mail.
  6. Haga clic en Aceptar para guardar los cambios.

Alternativamente, puede lograr el mismo resultado utilizando T-SQL:

USE [msdb]
GO
EXEC msdb.dbo.sp_set_sqlagent_properties @email_save_in_sent_folder = 1, @databasemail_profile = N'Perfil de correo SQL Mail Websense', @use_databasemail = 1
GO

Para que el cambio surta efecto, debe reiniciar SQL Server Agent. Esto se puede hacer desde SQL Server Management Studio (SSMS), los Servicios de Windows o la Administración de configuración de SQL Server. Si está utilizando una instancia en clúster, se recomienda utilizar el Administrador de clústeres de conmutación por error para reiniciar el recurso del Agente SQL.

Siguiendo estos pasos, ahora debería poder habilitar SQL Server Agent para enviar correos electrónicos correctamente.

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.