Por que eu devo ler este artigo: O banco de dados master possui informações específicas de sistema comuns a todos os bancos de dados, por exemplo, logins de servidor. Se você perder seu banco de dados master, provavelmente não conseguirá iniciar o SQL Server.
Este artigo aborda o processo de recriação do banco de dados master e, depois, sua recuperação através de backup. Adicionalmente, veremos outras áreas críticas que são muitas vezes negligenciadas em uma recuperação, a saber: logins e contas de usuários que ficam fora de sincronização. Analisaremos também duas ferramentas que nos auxiliarão a corrigir alguns problemas comuns. Por fim, abordaremos alguns outros problemas comuns que você pode encontrar ao recriar o banco de dados master e como solucioná-los.
Recriando e recuperando o banco de dados master
O banco de dados master é especial. Quando o banco de dados master sofre algum dano, é bastante provável que o SQL Server não funcione. Nesta seção, recriaremos o banco de dados master e, depois, o restauraremos. Lembre-se de que ao recriar o master você perderá todas as informações e dados. Portanto, verifique se os bancos de dados possuem backup. Se os arquivos do banco de dados ainda existirem e forem recuperáveis, você poderá reconectar os bancos de dados utilizando o SQL EM ou a stored procedure sp_attach_db. A seguir, examinaremos uma situação de recuperação típica.
Cenário
Nosso sistema sofreu um pico de tensão e perdemos uma unidade de disco. Quando tentamos iniciar o backup do SQL Server, descobrimos que ele não estava iniciando e examinamos o errorlog (ver Listagem 1). O local padrão onde o errorlog pode ser encontrado é o diretório (. . .\LOG).
2001-04-28 14:53:18.45 serverMicrosoft SQL Server 2000 - 8.00.194 (Intel X86) Aug 6 2000 00:57:48 Copyright (c) 1988-2000 Microsoft Corporation Enterprise Edition on Windows NT 5.0 (Build 2195: ) 2001-04-28 14:53:18.50 server Copyright (C) 1988-2000 Microsoft Corporation. 2001-04-28 14:53:18.50 server All rights reserved. 2001-04-28 14:53:18.50 server Server Process ID is 1364. 2001-04-28 14:53:18.50 server Logging SQL Server messages in file 'C:\Program Files\Microsoft SQL Server\MSSQL\log\ERRORLOG'. 2001-04-28 14:53:180,53 server initconfig: Error 2(The system cannot find the file specified.) opening 'C:\Program Files\Microsoft SQL Server\MSSQL\data\master. mdf' for configuration information.
Podemos perceber que perdemos o arquivo de dados do banco de dados master. Para iniciar a restauração do sistema, utilize a ferramenta rebuildm localizada no diretório ...\tools\binn (C:...\tools\binn>rebuildm.exe) para recriar o banco de dados master.
Ao executar a ferramenta rebuildm, a tela mostrada na Figura 1 é exibida. Serão solicitadas informações como o local dos arquivos de dados (os arquivos de dados originais que acompanham o CD), que estão localizados no diretório ...\x86\data no CD. Recomendamos que você copie os arquivos para um disco rígido local antes de tentar executar a recriação.
A Figura 1 mostra a tela splash da ferramenta Rebuild Master. Digite o nome do servidor e o local dos arquivos de dados master.mdf e master.ldf.
Depois de fornecer o local, o SQL Server confirmará que queremos recriar o master e substituir as informações do sistema armazenadas no banco de dados do sistema. O SQL Server, em seguida, começará a copiar os arquivos de dados. Após a cópia dos arquivos, o SQL Server se configurará para que o novo master seja reconhecido. Neste momento, temos um SQL Server limpo, mas que não reconhece a existência de outros bancos de dados. Agora é a hora de restaurar o backup do master de nosso último backup bem sucedido. Ele conterá os locais dos outros bancos de dados do servidor, logins do SQL Server etc.
Restaurando o banco de dados master
Para restaurar o banco de dados master, você precisará executar as seguintes etapas:
-
Adicione o dispositivo de backup:
...
sp_addumpdevice 'disk', 'master_backup', 'c:\tmp\sql_backup\master_backup.dmp' goQuer ler esse conteúdo completo? Tenha acesso completoConfira outros conteúdos:
SQL SUM: somando os valores de uma...
SQL: INNER JOIN
SQL: Introdução ao Where
Por Devmedia Em 2008Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.
Aceitar