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! 🙂
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' */
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é 🙂
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.