Como Migrar os bancos Master, Msdb e Model no SQL Server passo a passo
Artigo escrito por Otávio Freitas Teixeira.
Processo passo a passo de Migração dos bancos de dados Master, Msdb, Model.
O procedimento deve ser feito seguindo uma ordem. Primeiro deve-se migrar o banco master e depois o model, msdb e temp. O banco de dados temporário, segundo [1], deve ser direcionado o novo caminho. Pois cada vez que o serviço do banco de dados é iniciado o banco é reconstruído.
Todas as ações em um ambiente cluster deve ser realizado em todos os nós participantes. Abaixo descreverei o passo-a-passo para migrar os bancos de dados no nó ativo, assim como configurar os nós passivos do cluster.
Pré – Migração em ambiente Cluster.
Antes de iniciar o processo de migração dos bancos de dados de sistema deve ser verificar se o novo disco faz parte do Grupo Cluster da instancia ao qual terá seus bancos migrados.
No caso do disco não estiver presente no Grupo Cluster e não for dependente do serviço do SQL Server o erro abaixo é apresentado ao realizar o comando de mudança de localização dos arquivos de dados e logs.
Assim as seguistes ações devem ser realizadas:
Associar o disco ao Gupo Cluster
a - Identificar o Disco livre
b - Atribuir disco ao Grupo: Botão direito do mouse More Actions... Move this resource to another service or application
c - Escolher o Serviço do SQL Server que receberá o disco (No caso SQL Server (INSTANCEB)) clique em OK
Ajustar a dependência do disco com o serviço do SQL Server
a - Selecione na Coluna esquerda no item Services and Aplication o Serviço que teve o disco associado [No caso SQL Server (INSTANCEB) ]
b - Selecione o serviço do SQL Server
c - Clicar em Properties na coluna do lado direito (em amarelo)
d - Selecionar a aba Dependencies
e - Clicar em Insert, abrirá uma nova linha para selecionar o recurso.
Expandir o dropBox e selecionar o disco adicionado.
f - Clicar em Apply e OK
Nenhuma mensagem é emitida de confirmação da associação do disco
Para realizar a migração do banco de dados master.
Acessar o banco de dados e executar o SQL abaixo para obter: nome lógico, caminho e status dos arquivos do banco de dados master.
II. (-d) Caminho do arquivo de dados do banco de dados master
III. (-e) Caminho do arquivo de erros do SQL Server
IVI. (-l) Caminho do arquivo de log do banco de dados master.
Stop na instancia do SQL Server.
Na janela do Failover Cluster colocar o serviço do SQL Server offline. Botão direito mouse Take this resource offline
Mover os arquivos mdf e master.ldf para o novo local.
Start na instancia do SQL Server em modo master-only recovery com o seguinte comando no banco prompt de comando.
Abrir o Command Prompt como
Executar:
Para instância default
NET START MSSQLSERVER /f /T3608
Para instância nomeada
NET START MSSQL$INSTANCEB /f /T3608
Acessar o banco em modo exclusivo SQLCMD –E –S
Execute o seguinte comando que segue abaixo.
Deve ser informado o novo caminho junto com o nome do arquivo *.mdf e *.ldf
Modificar:
Mssqlsystemresource Pelo nome do banco (No caso master)
SELECT name, physical_name
FROM sys.master_files
WHERE database_id = DB_ID(N'msdb');
GO
Alterar o caminho dos arquivos de dados e log do banco de dados com o comando abaixo.
ALTER DATABASE mssqlsystemresource
MODIFY FILE (NAME=data, FILENAME='new_path_of_mastermssqlsystemresource.mdf');
GO
ALTER DATABASE mssqlsystemresource
MODIFY FILE (NAME=log, FILENAME='new_path_of_mastermssqlsystemresource.ldf');
GO
Modificar o nome do banco de dados
Informar o novo caminho.
Stop na instância do SQL Server.
Mover os arquivos de mdf e ldf do banco de dados msdb
Start da instância do SQL Server.
Executar novamente a consulta abaixo e verificar se o banco está como os caminhos corretos
Para realizar a migração do banco de dados tempdb.
Para o banco de dados tempdb não é necessário que o DBA movimente os arquivos de dados e log, pois toda vez que o banco de dados é inicializado esses arquivos são recriados no diretório configurado no parâmetro Startup Parameters. Assim deve-se apenas modificar os caminhos no catálogo.
As configurações abaixo devem ser realizadas nos nós participantes do Cluster
Configurando o SQL Server Agent
Acessar Start run
Digitar REGEDIT
Acessar o diretório: HKEY_LOCAL_MACHINE / SOFTWARE / Microsoft / Microsoft SQL Server / MSSQL10.
a - Modificar as chaves de registro, informando o novo diretório
I - ErrorLogFile
II - WorkingDirectory
Configurando diretório de ErrorDump
Acessar Start run
Digitar REGEDIT
Acessar o diretório: HKEY_LOCAL_MACHINE / SOFTWARE / Microsoft / Microsoft SQL Server / MSSQL10.
a - Modificar as chaves de registro, informando o novo diretório
I - ErrorDumpDir
Configurando diretório de Backup
Acessar Start run
Digitar REGEDIT
Acessar o diretório: HKEY_LOCAL_MACHINE / SOFTWARE / Microsoft / Microsoft SQL Server / MSSQL10.
a - Modificar as chaves de registro, informando o novo diretório
I - BackupDirectory
Configurando diretório de Replicação
Acessar Start run
Digitar REGEDIT
Acessar o diretório: HKEY_LOCAL_MACHINE / SOFTWARE / Microsoft / Microsoft SQL Server / MSSQL10.
a - Modificar as chaves de registro, informando o novo diretório
I - WorkingDirectory
Configurando diretório de Full Text
Acessar Start run
Digitar REGEDIT
Acessar o diretório: HKEY_LOCAL_MACHINE / SOFTWARE / Microsoft / Microsoft SQL Server / MSSQL10.
a - Modificar as chaves de registro, informando o novo diretório
I - FullTextDefaultPath
II - SQLDataRoot
Esse artigo foi escrito por Otávio Freitas Teixeira.