Como ENVIAR E-MAIL pelo SQL SERVER usando o GMAIL

By josue | SQL

Oi! Seja bem-vindo!

Hoje vou te mostrar COMO ENVIAR E-MAIL pelo SQL SERVER usando qualquer conta do GMAIL como servidor SMTP! Uma tática incrível para você que quer monitorar ou auditar seu SQL de forma efetiva! 🙂

 

ENVIANDO E-MAILS PELOS SQL:

Use o script abaixo para configurar o seu SQL, apenas lembre-se de altera-lo para configurar a conta do GMAIL de sua preferência. Depois me avise como você vai usar o envio de e-mails para facilitar sua vida!

 

 

---------------------------------------------------------------------------------
-- SQL Database Mail: Enviar e-mail por t-sql usando o Gmail
---------------------------------------------------------------------------------
-- Passo 1) Pré-requisito para usar GMAIL
-- Acessar: https://myaccount.google.com/security e configurar "Allow less secure apps: ON"

-- Passo 2) Pré-requisito para enviar e-mails do SQL - Habilitar "Database Mail XPs"
execute sp_configure 'Show Advanced Options', 1
reconfigure
execute sp_configure 'Database Mail XPs', 1
reconfigure

-- Passo 3) -- CONFIGURAR A CONTA DO GMAIL NO SQL
-- Adicionar conta de e-mail
execute msdb.dbo.sysmail_add_account_sp
	-- Dados fíxos
	@mailserver_name = 'smtp.gmail.com', -- endereço do servidor de envio de e-mails
	@port = 587, -- porta de comunicação
	@enable_ssl = 1, -- habilitar SSL (criptografia durante o envio de dados)
	-- Dados da sua conta
	@account_name = 'Gmail_Conta', -- nome da conta dentro do SQL
	@display_name = 'Banco SQL',   -- Nome que aparecerá como remetente do e-mail
	@email_address = '[email protected]',
	@username = '[email protected]',
	@password = '*** Sua senha do gmail ***'

-- Passo 4) Adicionar perfil e associar a conta
-- Adicionar perfil para envio de e-mail
execute msdb.dbo.sysmail_add_profile_sp
	@profile_name = 'Gmail_Perfil',
	@description = 'Perfil para envio de notificações do SQL.'
-- Associar o perfil a conta
execute msdb.dbo.sysmail_add_profileaccount_sp
	@profile_name = 'Gmail_Perfil',
	@account_name = 'Gmail_Conta',
	@sequence_number = 1


-- Feito! :-)


-- ENVIAR UM E-MAIL DE TESTES PELO SQL! (help: https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-send-dbmail-transact-sql)
execute msdb.dbo.sp_send_dbmail 
	@profile_name = 'Gmail_Perfil',
	@recipients = '[email protected]',
	@subject = 'Assunto - Teste Database Mail',
	@body = 'Corpo da mensagem de teste.'



-- CONSULTAS / TROUBLESHOOTING
-- Contas cadastradas no SQL
select * from msdb.dbo.sysmail_account

-- Perfis existentes
select * from msdb.dbo.sysmail_profile

-- Associações Perfil & Conta
select * from msdb.dbo.sysmail_profileaccount

-- Emails enviados
select * from msdb.dbo.sysmail_mailitems

-- Consultar logs do gerenciador de e-mails
select * from msdb.dbo.sysmail_log



-- EXCLUIR AS CONFIGURAÇÕES:
/* 
-- Remover logs:
declare @hoje datetime = getdate()
execute msdb.dbo.sysmail_delete_mailitems_sp @sent_before = @hoje
execute msdb.dbo.sysmail_delete_log_sp 

-- Excluir profile:
execute msdb.dbo.sysmail_delete_profile_sp @profile_name = 'Gmail_Perfil'

-- Excluir conta:
execute msdb.dbo.sysmail_delete_account_sp @account_name = 'Gmail_Conta'

*/


 

CONCLUSÃO

Eeeeeeeeee! Fácil né? Esse script eu uso direto para monitorar bancos de dados e para receber e-mails de alerta sobre o que está acontecendo no dia a dia. Eu acho d++! Você pode usar isso para mandar relatórios automaticamente a qualquer horário enquanto você desfruta de sua atividade, comida, bebida, esporte ou companhia favorita! 🙂 Senhora automação sempre fazendo a nossa alegria!! kkkkk Espero que você tenha gostado e que continue firme e forte nos seus estudos – e na automação de tarefas!

Abraço do seu amigo Josué 🙂

Follow

About the Author

Oi, aqui é o Josué. Sou o criador do site dba-pro.com. Minha missão é ajudar pessoas a usarem o potencial do SQL Server em suas profissões, para que trabalhem felizes e bem remuneradas. Sou consultor e empreendedor, atuando em empresas desde 2000 e dando aulas desde 2004. Adoro SQL, Excel, automatização de processos, finanças e Coaching. Quando não estou trabalhando ou estudando, gosto de leitura, games para PC, filmes, séries e conversas estimulantes.

(11) comments

Add Your Reply