COMO FAZER BACKUP DE UM BANCO SQL
Confiar no cliente para fazer backup? Eu hein!
Um dia ele vai esquecer e quando precisa já era.
Seria bom fazer um esquema de vários backups, de forma que você tenha o backup de vários dias para trás.
Mas é bom fazer manutenção no banco de dados, para que nada deixe de funcionar.
Um dia ele vai esquecer e quando precisa já era.
Seria bom fazer um esquema de vários backups, de forma que você tenha o backup de vários dias para trás.
Mas é bom fazer manutenção no banco de dados, para que nada deixe de funcionar.
Olá gente ....
Lá vai a formula da Coca
1° Abra o bloco de notas .... e digite:
Salve o arquivo com extensão .sql no C:
2° Abra o bloco de notas ... e digite:
Salve o arquivo com extensão .bat ...
3° Abra o agendador de tarefas .... crie uma tarefa agendada ...... ache o arquivo .bat .... e defina um horário para o backup .... Obs: A tarefa precisa ter um usuário com senha pra ser executada ....
Sei que parece meio complicado .... mas o bom é que essa rotina serve pra qualquer versão do SQL 2005 ... inclusive a free ....
Uso essa rotina ha mais de um ano ..... nunca tive problemas ...
Lá vai a formula da Coca
1° Abra o bloco de notas .... e digite:
DECLARE @BackupFile varchar(255)
SET @BackupFile = [ô]C:\[Seu banco]([ô] + REPLACE(CONVERT(VARCHAR,GETDATE(),104),[ô].[ô],[ô]-[ô]) + [ô]).bak[ô]
BACKUP DATABASE [Ô][Seu banco][Ô] TO DISK = @BackupFile
Salve o arquivo com extensão .sql no C:
2° Abra o bloco de notas ... e digite:
sqlcmd -S [Servidor]\[Instância] -U [usuário] -P [Senha] -i [Ô]c:\Backup.sql[Ô]
Salve o arquivo com extensão .bat ...
3° Abra o agendador de tarefas .... crie uma tarefa agendada ...... ache o arquivo .bat .... e defina um horário para o backup .... Obs: A tarefa precisa ter um usuário com senha pra ser executada ....
Sei que parece meio complicado .... mas o bom é que essa rotina serve pra qualquer versão do SQL 2005 ... inclusive a free ....
Uso essa rotina ha mais de um ano ..... nunca tive problemas ...
Acho que resolve
http://www.linhadecodigo.com.br/ArtigoImpressao.aspx?id=2326
http://www.linhadecodigo.com.br/ArtigoImpressao.aspx?id=2326
A ideia do expert realmente e bem funcional, vale a pena tentar implementar ela
E quase a formula da coca-cola mesmo
E quase a formula da coca-cola mesmo
[txt-color=#007100]--Setando o banco a ser utilizado[/txt-color]
USE AdventureWorks;
[txt-color=#007100]--Criando um backup. Por padrão, o backup criado é do tipo FULL[/txt-color]
BACKUP DATABASE AdventureWorks TO DISK=[ô]C:\Backup\BackupTSQL.bak[ô];
Expert, creio que a responsabilidade de fazer o backup é do cliente, mas a de disponibilizar esta função é minha, então acho que criar uma tarefa não é muito legal. Prefiro que o usuário o faça.
Outra questão: pelo que tenho pesquisado, a falta de simplicidade para a resolução da questão é uma deficiência no SQL. No Firebird isso seria muito simples...
Outra questão: pelo que tenho pesquisado, a falta de simplicidade para a resolução da questão é uma deficiência no SQL. No Firebird isso seria muito simples...
3LTON, parceiro discordo da sua opnião, o firebird e um bom banco de dados mas ainda não tem a maturidade do SQL Server, a necessidade do backup e de fato do cliente e uma obrigação do seu aplicativo executa-lo mas veja que temos sim muitas opções de faze-lo o comando que ja foi posta acima pode ser executado pelo usuario criando uma função no seu sistema, mas para isso teria que ser executado na unidade servidora, e utilizando os meios que o SQL Server tem para automatiza esta função e mais indicada, sendo assim basta cria um script.sql que crie e configure um job para faze-lo ou utilizar a dica tb postada acima de utilza as tarefas agendadas do windows, e vc teria as duas opções permitindo que o cliente o faça quando julgar necessario e automatizado.
Citação::
Expert, creio que a responsabilidade de fazer o backup é do cliente, mas a de disponibilizar esta função é minha, então acho que criar uma tarefa não é muito legal. Prefiro que o usuário o faça.
Outra questão: pelo que tenho pesquisado, a falta de simplicidade para a resolução da questão é uma deficiência no SQL. No Firebird isso seria muito simples...
Sim, a responsabilidade é do cliente, mas veja bem... estamos falando de SqlServer (que não é qualquer banco de dados). Então, deve haver alguem para manter o banco de dados (não só fazer o backup, mas monitorar, aplicar correções, vericar problemas que pode fazer o banco de dados parar e etc).
E quanto a essa questão de falta de simplicidade ser uma deficiência no SQL, eu descordo totalmente. Acho que você precisa se informar melhor sobre o SqlServer.
Citação:(não só fazer o backup, mas monitorar, aplicar correções, vericar problemas que pode fazer o banco de dados parar e etc).
Pq monitorar, aplicar correções ou verificar problemas?
Citação::
(não só fazer o backup, mas monitorar, aplicar correções, vericar problemas que pode fazer o banco de dados parar e etc).
Pq monitorar, aplicar correções ou verificar problemas?
Estamos falando de um banco de dados de alto desempenho, certo?
Assim, temos que ter em mente alguns aspectos como:
- Segurança: é necessário garantir que os dados estejam seguros quanto a acessos indesejados atribuindo os nÃveis de permissões adequados aos usuários de banco de dados.
- Recuperação: criar procedimentos de back-up contra possÃveis desastres. E é importante garantir o funcionamento e a disponibilidade do back-up.
- Disponibilidade: garantir que o banco de dados fique disponÃvel
- Desempenho: providenciar o melhor desempenho possÃvel do banco de dados. Isso inclui atividades como otimização de consultas, utilização da infra-estrutura (disco, memória, processador, etc) de forma adequada
- E mais algumas que não lembro no momento.
Mesmo que isso seja atribuição de um DBA, não impede que uma outra pessoa assuma as reponsabilidades.
Bom, é isso...
Tópico encerrado , respostas não são mais permitidas