Fazer backup e restauração dos bancos de dados do SQL Server no Linux

Aplica-se a: SQL Server no Linux

Você pode fazer backup de bancos de dados do SQL Server no Linux de várias maneiras. Em um servidor Linux, você pode usar sqlcmd para se conectar ao SQL Server e fazer backup de bancos de dados. No Windows, você pode se conectar ao SQL Server em Linux e fazer backup dos bancos de dados com a interface do usuário. A funcionalidade de backup é a mesma entre plataformas. Por exemplo, você pode fazer backup de bancos de dados localmente, em drives remotos, ou para backup do SQL Server para URL do Armazenamento de Blobs do Azure.

Importante

O SQL Server em Linux só suporta backup para o Armazenamento de Blobs do Azure com blobs de bloco. Usar uma chave de armazenamento para backup e restauração usa um blob de página, que não é suportado. Use uma assinatura de acesso compartilhado (SAS) em vez disso. Para obter informações sobre blobs de bloco vs. blobs de página, veja Backup para blob de bloco vs. blob de página.

Fazer o backup de um banco de dados

No exemplo a seguir, sqlcmd conecta-se à instância de SQL Server local e faz um backup completo de um banco de dados de usuário chamado demodb.

sqlcmd -S localhost -U sa -Q "BACKUP DATABASE [demodb] TO DISK = N'/var/opt/mssql/data/demodb.bak' WITH NOFORMAT, NOINIT, NAME = 'demodb-full', SKIP, NOREWIND, NOUNLOAD, STATS = 10"

Quando você executa o comando, o SQL Server solicita uma senha. Depois que você digita a senha, o shell retorna os resultados do progresso do backup. Por exemplo:

Password:
10 percent processed.
21 percent processed.
32 percent processed.
40 percent processed.
51 percent processed.
61 percent processed.
72 percent processed.
80 percent processed.
91 percent processed.
Processed 296 pages for database 'demodb', file 'demodb' on file 1.
100 percent processed.
Processed 2 pages for database 'demodb', file 'demodb_log' on file 1.
BACKUP DATABASE successfully processed 298 pages in 0.064 seconds (36.376 MB/sec).

Fazer backup do log de transações

Se seu banco de dados estiver no modelo completo de recuperação, você também pode fazer backup do log de transações para opções de restauração mais detalhadas. No exemplo a seguir, sqlcmd conecta-se à instância de SQL Server local e faz um backup de log de transações.

sqlcmd -S localhost -U sa -Q "BACKUP LOG [demodb] TO DISK = N'/var/opt/mssql/data/demodb_LogBackup.bak' WITH NOFORMAT, NOINIT, NAME = N'demodb_LogBackup', NOSKIP, NOREWIND, NOUNLOAD, STATS = 5"

Restaurar um banco de dados

No exemplo a seguir, sqlcmd conecta-se à instância local do SQL Server e restaura o banco de dados demodb. A NORECOVERY opção permite restaurações adicionais de backups de arquivos de log. Se você não planeja restaurar arquivos de log adicionais, remova a opção NORECOVERY.

sqlcmd -S localhost -U sa -Q "RESTORE DATABASE [demodb] FROM DISK = N'/var/opt/mssql/data/demodb.bak' WITH FILE = 1, NOUNLOAD, REPLACE, NORECOVERY, STATS = 5"

Tip

Se você usar NORECOVERY sem querer, mas não tiver backups adicionais de arquivos de log, execute o comando RESTORE DATABASE demodb sem parâmetros adicionais. Esse comando finaliza a restauração e deixa seu banco de dados operacional.

Restaurar o log de transações

O comando a seguir restaura o backup de log de transações anterior.

sqlcmd -S localhost -U sa -Q "RESTORE LOG demodb FROM DISK = N'/var/opt/mssql/data/demodb_LogBackup.bak'"

Backup e restauração com SSMS (SQL Server Management Studio)

Você pode usar o SQL Server Management Studio (SSMS) a partir de um computador Windows para se conectar a um banco de dados Linux e fazer backup pela interface do usuário.

Note

Instale a versão mais recente do SQL Server Management Studio (SSMS). Para obter mais informações sobre como usar o SSMS, consulte Usar o SQL Server Management Studio no Windows para gerenciar o SQL Server em Linux.

As etapas a seguir demonstram como fazer um backup com o SSMS.

  1. Inicie o SSMS e conecte-se à sua instância do SQL Server no Linux.

  2. No Pesquisador de Objetos, clique com o botão direito no seu banco de dados, selecione Tarefas e então selecione Backup Up....

  3. No diálogo Backup do Banco de Dados, verifique os parâmetros e opções, e selecione OK.

O SQL Server conclui o backup do banco de dados.

Restauração com SSMS (SQL Server Management Studio)

As etapas a seguir orientarão você pela restauração de um banco de dados com o SSMS.

  1. No SSMS, clique com o botão direito em Bancos de Dados e selecione Restaurar Bancos de Dados....

  2. Em Fonte de Dados, selecione Dispositivo: e, em seguida, selecione as reticências (...).

  3. Localize o arquivo de backup do banco de dados e selecione OK.

  4. Em Restaurar plano, verifique as configurações e o arquivo de backup. Selecione OK.

  5. O SQL Server restaura o banco de dados.

Contribua com a documentação do SQL

Você sabia que pode editar o conteúdo do SQL por conta própria? Ao fazer isso, além de melhorar nossa documentação, você também será creditado como um colaborador da página.

Para obter mais informações, consulte a documentação Edit Microsoft Learn.