O SQL Server fornece uma maneira fácil de criar um backup de um banco de dados. Os backups podem ser feitos com Transact-SQL, PowerShell ou por meio da GUI do SQL Server Management Studio.
Aqui, demonstrarei como criar um backup usando a GUI do SQL Server Management System, usando o Transact-SQL e, finalmente, com o SQL Server Powershell.
Criar um backup por meio da GUI
-
Iniciar o Backup do banco de dados Caixa de diálogo
No Pesquisador de Objetos, clique com o botão direito do mouse no banco de dados do qual deseja fazer backup e selecione Tarefas> Fazer backup... a partir do menu contextual.
-
Revise as configurações de backup
Essa caixa de diálogo oferece a oportunidade de alterar qualquer uma das configurações, se necessário.
Para o nosso exemplo, deixe-o nas configurações padrão e clique em OK para criar o backup.
Você pode alterar o banco de dados aqui se tiver selecionado acidentalmente o banco de dados errado na etapa anterior.
-
Backup concluído
Você receberá uma mensagem quando o backup for concluído.
Clique em OK para fechar a mensagem e a caixa de diálogo.
O arquivo de backup agora estará localizado no local especificado.
Fazer backup de um banco de dados usando Transact-SQL
-
Você pode executar o mesmo backup acima usando SQL.
Para fazer isso, abra uma nova janela de consulta e execute umBACKUP
demonstração.
OBACKUP
A instrução aceita várias opções (assim como a opção GUI), mas você também pode executar um backup simples com um mínimo de código.
Código de amostra
Abaixo está um exemplo de um script de backup simples que especifica o banco de dados para backup e o local para o backup.
Depois de executar esse código, o arquivo de backup estará localizado no local especificado.
BACKUP DATABASE Music TO DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Backup\Music.bak';
Você pode ver a sintaxe completa para oBACKUP
declaração no site da Microsoft.
Fazer backup de um banco de dados usando o PowerShell
O SQL Server 2016 oferece suporte ao Windows PowerShell, que é um shell de script, normalmente usado para automatizar tarefas de administração e implantação.
A linguagem PowerShell oferece suporte a uma lógica mais complexa do que scripts Transact-SQL, o que permite criar scripts mais sofisticados para seus backups e outras tarefas.
-
Abra o PowerShell
Clique com o botão direito do mouse no banco de dados e selecione Iniciar Powershell .
-
Execute o comando de backup
Digite o comando para criar o backup e pressione Enter (ou Retornar , dependendo do seu teclado).
O backup será executado imediatamente.
Código de amostra
O código a seguir criará um backup como nos exemplos anteriores. Basta substituirMyServer
com o nome do seu servidor.
Depois de executar este código, o arquivo de backup estará localizado no local padrão.
Backup-SqlDatabase -ServerInstance MyServer -Database Music
Você também pode especificar um local
Backup-SqlDatabase -ServerInstance MyServer -Database Music -BackupFile 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Backup\Music.bak'
Você também pode especificar-BackupAction Database
para declarar explicitamente que é um backup completo. No entanto, esta é a opção padrão.
Você pode ver a documentação completa doBackup-SqlDatabase
comando no site da Microsoft.
Substituindo arquivos de backup
Se você executou todos os exemplos acima exatamente como estão, deve ter notado que cada vez que o executa, o tamanho do arquivo de backup aumenta.
Isso ocorre porque cada backup sucessivo está se adicionando ao arquivo existente.
Ele está fazendo isso porque estamos usando o mesmo nome de arquivo e não especificamos explicitamente que cada backup deve substituir qualquer arquivo existente.
Há uma opção que permite substituir o arquivo existente.
- Usando a GUI , clique em Opções de mídia no menu esquerdo do Backup do banco de dados caixa de diálogo e selecione Substituir todos os conjuntos de backup existentes em Substituir mídia seção.
- Usando SQL adicione
WITH INIT
à instrução SQL. - Usando o Powershell , adicione
-Initialize
ao comando.
Salvando arquivos de backup
No entanto, geralmente é uma boa ideia criar um backup completo com um nome de arquivo exclusivo (geralmente incluindo a data no nome do arquivo). Ter um nome de arquivo exclusivo significa que cada backup será um arquivo separado.
Além disso, dependendo do tamanho de seu banco de dados e de quantos dados novos estão sendo inseridos nele, você pode complementar seus backups completos com backups diferenciais. Um backup diferencial captura apenas os dados que foram alterados desde o backup completo mais recente.