Backup é algo que você deve sempre ter a sua disposição, então para isso fazemos backups diários, dependendo da situação até mesmo backups por hora, mas o que costumamos guardar são arquivos bak, diff, trn etc.
Um dia eu me deparei com uma mudança que tive que fazer e na descrição dizia que eu deveria executar 3000 mil scripts de uma única vez. Em outro artigo eu mostrarei a vocês como fazer isso.
Só que o plano de rollback dessa mudança estava, restaurar o backup de script de todos os objetos alterados.
Bom, agora temos aqui um grande problema.
Você poderia dizer, que eu posso fazer esse backup usando o SSMS clicando com o botão direito na base de dados ir em tasks e selecionar generate scripts e guardar esse arquivo em algum lugar.
Sim eu poderia, mas em caso de algum problema eu teria que procurar nesse arquivo gigante a procedure que deu erro e finalmente voltar o backup.
E se eu já tivesse esse backup pronto? Cada objeto no banco de dados separado por arquivo? Não seria mais interessante?
E se eu já tivesse isso em uma rotina de backup através de um job? Opa, está melhorando.
Encontrei um script em PowerShell com um amigo que me permitiu compartilhar com vocês. o mesmo script que me ajudou nesta atividade de forma eficiente e objetiva.
Acesse o arquivo Script Backup Estrutural na linha 10 substitua a linha:
De: $srv=New-Object “Microsoft.SqlServer.Management.Smo.Server” “local”
Para: $srv=New-Object “Microsoft.SqlServer.Management.Smo.Server” “nome da instância”
Nota: Se você não sabe o nome da sua instância basta executar o comando:
SELECT @@SERVERNAME
Crie uma pasta com o nome BackupEstrutural na unidade C: ou Em outra unidade, D: por exemplo. Mas se você criar em outra unidade terá que alterar o caminho na linha 2 do arquivo (Script Backup Estrutural).
Execute o arquivo Script Backup Estrutural do PowerShell no seu ambiente.
Execute o arquivo JB_DB_BACKUPESTRUTURAL.sql para criar o job no seu ambiente SQL Server.
Passo 2. Acesse o job no passo 1 e altere a décima linha:
De: $srv=New-Object “Microsoft.SqlServer.Management.Smo.Server” “local”
Para: $srv=New-Object “Microsoft.SqlServer.Management.Smo.Server” “nome da instância”
Nota: Se você não sabe o nome da sua instância basta executar o comando:
SELECT @@SERVERNAME
Crie uma pasta com o nome BackupEstrutural na unidade C: ou Em outra unidade, D: por exemplo. Mas se você criar em outra unidade terá que alterar o caminho na linha 2 do arquivo (Script Backup Estrutural).
Eu vou deixar disponível os dois scripts no link abaixo, basta fazer o download e pronto. Em breve vou criar um vídeo mostrando passo a passo como fazer isso.
Em caso de dúvidas, comente abaixo, ou fale comigo através de meus contatos.
Grande abraço!
If you are a fan of online gambling, then you must have come across gry…
On the internet online casinos have transformed the betting industry, enabling players to vegas.hu online…
Casinos online offer free spins to draw new customers. These bonuses are usually very profitable,…
In recent times, online casino sites have actually obtained enormous appeal among gamers, providing a…
Bitcoin, the most preferred cryptocurrency worldwide, has reinvented lots of industries, including the on baixar…
Online slots have turned into one of one of the most preferred forms of home…