Ir para conteúdo
Fórum Script Brasil
  • 0

E-mail de backup pelo Sql Sever 2008


Diego Deisss

Pergunta

Ola Pessoal

Bom dia a todos!

preciso da ajuda de voces para uma duvida!

Seguinte, tenho uma sp_email, para compactar e enviar o backup do sql por e-mail

esta funcionando sem problemas, uso uma dll chamada ChilkatMail_v7_9.dll, de uns dias pra ca

estou tendo muitos problemas com essa dll, e muitos clientes usam backup na maquina e para minha segurança tambem verifico

os backups no e-mail, A caso de um eventual problema na maquina do cliente, eu tenho seu backup

por tanto oque preciso é de uma outra dll que tenha a mesma funçao, para que eu possa ficar mais tranquilo quanto a dados de cliente.

alguém teria uma outra pra me dizer?

Um bom dia a todos

abraço

Link para o comentário
Compartilhar em outros sites

15 respostass a esta questão

Posts Recomendados

  • 0
Ola Pessoal

Bom dia a todos!

preciso da ajuda de voces para uma duvida!

Seguinte, tenho uma sp_email, para compactar e enviar o backup do sql por e-mail

esta funcionando sem problemas, uso uma dll chamada ChilkatMail_v7_9.dll, de uns dias pra ca

estou tendo muitos problemas com essa dll, e muitos clientes usam backup na maquina e para minha segurança tambem verifico

os backups no e-mail, A caso de um eventual problema na maquina do cliente, eu tenho seu backup

por tanto oque preciso é de uma outra dll que tenha a mesma funçao, para que eu possa ficar mais tranquilo quanto a dados de cliente.

alguém teria uma outra pra me dizer?

Um bom dia a todos

abraço

Olá Diego, espero que esteja tudo bem contigo.

Desculpe a indiscrição, mas por acaso essa sua sp_email utiliza-se do recurso Database Mail(nativo do SQL Server 2008) ou é uma rotina fazendo referencia a esta ChilkatMail_v7_9.dll?

Caso não seja o recurso nativo, você poderia utilizar o Database Mail atraves da proc sp_send_dbmail, localizada no banco msdb. Se quiser dicas de como configurar, me avise aqui q eu o ajudo.

Só pra constar, eu utilizo o database mail e nunca tive nenhum problema. É realmente muito estável.

Abração e boa sorte nesta sua empreitada.

Fico à disposição.

Link para o comentário
Compartilhar em outros sites

  • 0

ola pessoal

obrigado pelas respostas!

oooooooo Cosme esta tudo bem comigo sim hehe , valeu e com você

acho que vou precisar de ajuda pra configurar o sp_send_dbmail

eu nunca usei, mas tenho uma duvida, eu consigo compactar o banco e dividir em varias partes?

cosme na minha sp_email eu não uso Database Mail, uso o sql 2008 express e não tem habilitado

tentei habilitar atravez da sp_configure mas não te a opçao 'Database Mail XPs'

ai não da pra habilitar a não ser que tenha outra forma?

deu esse erro na sp_send_dbmail

O SQL Server bloqueou o acesso a procedimento 'dbo.sp_send_dbmail' do componente 'Database Mail XPs' porque esse componente está desativado como parte da configuração de segurança deste servidor. Um administrador de sistema pode habilitar o uso de 'Database Mail XPs' usando sp_configure. Para obter mais informações sobre como habilitar 'Database Mail XPs', consulte "Configuração da área da superfície" nos Manuais Online do SQL Server.

até aqui agradeço lhes a ajuda

um bom dia a vocês

Editado por Diego Deisss
Link para o comentário
Compartilhar em outros sites

  • 0

Opa.. bao também..rs...

Cara, seguinte... o database mail não está disponível para o Express... :(

Mas não fique triste, alguns malucos conseguiram habilitar... porém, eu não testei... vamos tentar e montar um tutorial pra gente disponibilizar aqui pro pessoal.

Vamos começar....

Primeira coisa a se fazer (segundo os textos que li)

O SQL Express possui todas as procedures necessárias, serviços, etc .. para manipulação de email. O problema é que quando tenta enviar, diz que o arquivo "DatabaseMail90.exe" não pode ser encontrado ou iniciado... algo assim... Entende-se que o arquivo não existe na sua máquina... então vamos lá..rs.. vou compactar esses arquivos e disponibilizar pra você fazer download em algum lugar... pera ae... pronto... rs... http://www.4shared.com/file/7CvkR__Z/ArquivosSql.html

Agora é só copiar estes tres arquivos para a pasta MSSQL\Binn

se não me engano, tem que criar estas procs no banco msdb

-- sysmail_start_sp : allows databasemail to process mail from the queue 
CREATE PROCEDURE sysmail_start_sp
AS
    SET NOCOUNT ON
    DECLARE @rc INT 
   DECLARE @localmessage nvarchar(255)

    ALTER QUEUE ExternalMailQueue WITH STATUS = ON
    SELECT @rc = @@ERROR
    IF(@rc = 0)
    BEGIN
      ALTER QUEUE ExternalMailQueue WITH ACTIVATION (STATUS = ON);
       SET @localmessage = FORMATMESSAGE(14639, SUSER_SNAME())
       exec msdb.dbo.sysmail_logmailevent_sp @event_type=1, @description=@localmessage
    END
RETURN @rc
e criar esta também no banco msdb : lol.... :)
-- sysmail_stop_sp : stops the DatabaseMail process. Mail items remain in the queue until sqlmail started 
CREATE PROCEDURE sysmail_stop_sp
AS
    SET NOCOUNT ON
    DECLARE @rc INT
   DECLARE @localmessage nvarchar(255)
  
    ALTER QUEUE ExternalMailQueue WITH ACTIVATION (STATUS = OFF);
    SELECT @rc = @@ERROR
    IF(@rc = 0)
    BEGIN
       ALTER QUEUE ExternalMailQueue WITH STATUS = OFF;
       SELECT @rc = @@ERROR
       IF(@rc = 0)
       BEGIN
          SET @localmessage = FORMATMESSAGE(14640, SUSER_SNAME())
          exec msdb.dbo.sysmail_logmailevent_sp @event_type=1, @description=@localmessage
       END
    END
RETURN @rc
Cara... faça esses lances e vamos ver se conseguimos habilitar o database mail no express.... Se tiver algum problema, eu vou ler novamente o doc que achei.. o foda que tah em alemão! hauhauaua... tenho que ficar traduzindo trecho a trecho... :( Abraços e espero que dê certo.... Opa... <editando> cara.. pra habilitar, execute essa $#&&?!£ aqui.... lol....
USE Master
GO
sp_configure 'show advanced options', 1
GO
reconfigure with override
GO
sp_configure 'Database Mail XPs', 1
GO
reconfigure 
GO
sp_configure 'show advanced options', 0
GO
reconfigure --(ou reconfigure with override)
<editando novamente>.... rs..... O Database Account pode ser habilitado através da proc sysmail_add_account. To usando um um servidor fictício.Importante lembrar, que o servidor de email que será usado, deve aceitar relay.
EXECUTE msdb.dbo.sysmail_add_account_sp
    @account_name = 'TSQLMASTER',
    @description = 'Conta de testes do Database Mail',
    @email_address = 'tsqlmaster@tsqlmaster.net',
    @display_name = 'tsqlmaster',
    @username='tsqlmaster@tsqlmaster.net',
    @password='123456',
    @mailserver_name = 'mail.tsqlmaster.net'
Agora precisamos criar um mail profile, e faremos isso usando a proc sysmail_add_profile_sp.
EXECUTE msdb.dbo.sysmail_add_profile_sp
       @profile_name = 'MeuPerfil',
       @description = 'Perfil usado no Database Mail'
Agora vamos relacionar o nosso perfil a conta de e-mail criados nos passos anteriores.
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
    @profile_name = 'MeuPerfil',
    @account_name = 'TSQLMASTER',
    @sequence_number = 1
Agora, use a proc sysmail_add_principalprofile para conceder ao Database Mail Profile, acesso ao msdb public database role, e fazer deste perfil o padrão do DataBase Mail.
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
    @profile_name = 'MeuPerfil',
    @principal_name = 'public',
    @is_default = 1;
Agora, vamos testar o envio de emails através do SQL Server:
declare @body1 varchar(100)
set @body1 = 'Server :'+@@servername+ ' Meu primeiro email através do banco '

EXEC msdb.dbo.sp_send_dbmail @recipients='admin@tsqlmaster.net',
    @subject = 'Teste de email',
    @body = @body1,
    @body_format = 'HTML

O Sql Server apresentará a seguinte mensagem:

mail queued

Se não der essa mensagem, ae lascou-se...rs... se não der certo a gente v o que faz..r.s... tenta ae... vai me mantendo informado.. pois to curioso pra saber se dá certo.

Abração manow!

Editado por fulvio
Link para o comentário
Compartilhar em outros sites

  • 0

Hahuabhahauhauahua que da hora!!!

Cara, deu a mensagem e o e-mail chegou pra você ou não?

executa essa procedure aqui e coloca teu e-mail em @recipients... tem que chegar pra você. se tudo foi configurado certo, tem que enviar....

EXEC msdb.dbo.sp_send_dbmail @recipients='teu e-mail aqui!!!!!!!!',

@subject = 'Teste de email',

@body = 'Este é o corpo de um e-mail de teste!!! tem que chegar! hauhauahuahauah',

@body_format = 'HTML'

Cara... tomara que tenha dado certo!

Editado por Cosme Ferreira
Link para o comentário
Compartilhar em outros sites

  • 0

cara

esta dando essa msg

Email enfileirado.

mas não chega pra min não

deve esta faltando alguma coisa

vou colocar aqui

tudo que eu fiz e como coloquei

use msdb

CREATE PROCEDURE sysmail_start_sp
AS
    SET NOCOUNT ON
    DECLARE @rc INT 
   DECLARE @localmessage nvarchar(255)

    ALTER QUEUE ExternalMailQueue WITH STATUS = ON
    SELECT @rc = @@ERROR
    IF(@rc = 0)
    BEGIN
      ALTER QUEUE ExternalMailQueue WITH ACTIVATION (STATUS = ON);
       SET @localmessage = FORMATMESSAGE(14639, SUSER_SNAME())
       exec msdb.dbo.sysmail_logmailevent_sp @event_type=1, @description=@localmessage
    END
RETURN @rc


CREATE PROCEDURE sysmail_stop_sp
AS
    SET NOCOUNT ON
    DECLARE @rc INT
   DECLARE @localmessage nvarchar(255)
  
    ALTER QUEUE ExternalMailQueue WITH ACTIVATION (STATUS = OFF);
    SELECT @rc = @@ERROR
    IF(@rc = 0)
    BEGIN
       ALTER QUEUE ExternalMailQueue WITH STATUS = OFF;
       SELECT @rc = @@ERROR
       IF(@rc = 0)
       BEGIN
          SET @localmessage = FORMATMESSAGE(14640, SUSER_SNAME())
          exec msdb.dbo.sysmail_logmailevent_sp @event_type=1, @description=@localmessage
       END
    END
RETURN @rc


USE Master
GO
sp_configure 'show advanced options', 1
GO
reconfigure with override
GO
sp_configure 'Database Mail XPs', 1
GO
reconfigure 
GO
sp_configure 'show advanced options', 0
GO
reconfigure 



EXECUTE msdb.dbo.sysmail_add_account_sp
@account_name = 'Diego',
@description = 'Conta de testes do Database Mail',
@email_address = 'diegoferreira.design@gmail.com',
@display_name = 'tsqlmaster',
@username='diego@geekssolucoes.com.br',
@password='11111',
@mailserver_name = 'smtp.gmail.com'


EXECUTE msdb.dbo.sysmail_add_profile_sp
@profile_name = 'Diego',
@description = 'Perfil usado no Database Mail'



EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
@profile_name = 'Diego',
@account_name = 'Diego',
@sequence_number = 1


EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
@profile_name = 'Diego',
@principal_name = 'public',
@is_default = 1;


declare @body1 varchar(100)
set @body1 = 'smtp.gmail.com :'+@@servername+ ' Meu primeiro email através do banco '

EXEC msdb.dbo.sp_send_dbmail @recipients='diego@geekssolucoes.com.br',
@subject = 'Teste de email',
@body = @body1,
@body_format = 'HTML'

fiz nessa sequencia ai

como esta no tuto!

mas se tem algo de errado que fiz me avise

concerteza algum Bug tem !!! lololololol

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

select * from msdb.dbo.sysmail_event_log

O email não pôde ser enviado aos destinatários devido à falha no servidor de email. (Enviando Email usando a Conta 1 (2011-01-06T14:55:58). Mensagem de Exceção: Não é possível enviar emails para o servidor de email. (O servidor SMTP requer uma conexão segura ou o cliente não foi autenticado. A resposta do servidor foi: 5.7.0 Must issue a STARTTLS command first. r24sm15442888yba.6). )

deu esse erro ai

e o sent_status esta 2

Editado por Diego Deisss
Link para o comentário
Compartilhar em outros sites

  • 0

Cara... isso é problema na configuração da conta ou então o servidor não permite esse tipo de conexão... lembra o lance do relay.. o servidor tem que permitir.. dá uma pesquisada cara... ou então, tente fazer com outro server.....

Se fosse falha na rotina, não teria pego o retorno de erro do server de e-mail.

Tentei configurar uma conta do gmail aqui no meu server e não consegui....

Opa opa opa... agora foi! hauhauahuhauahuhuahauah pelo gmail....

Da uma olhada neste tutorial.. ensina a configurar o gmail no database mail....

:) :) :)

http://sqlfromhell.wordpress.com/2010/04/0...il-com-o-gmail/

Tente ae manow... espero que de certo!

Abração e vai nos mantendo informado se deu ou não certo!..

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...