Estou movendo um banco de dados SQL Server para um servidor separado do aplicativo que o utiliza (atualmente o aplicativo e o SQL estão no mesmo servidor).
A nova instância foi configurada para que os arquivos de dados ( .mdf
) e de log ( .ldf
) padrão sejam armazenados em unidades separadas, de acordo com o que entendo ser a prática recomendada geral.
Passei pelo processo de mover os arquivos de banco de dados do sistema não mestre (temp, modelo, etc.) para esses locais, deixando o mestre por último porque ele usa um processo diferente. Veja este link para as instruções que usei: https://learn.microsoft.com/en-us/sql/relational-databases/databases/move-system-databases?view=sql-server-ver16
Para o banco de dados mestre, as instruções dizem que após movê-lo, você deve atualizar o SQLDataRoot
valor no registro para apontar para a localização dos "arquivos do banco de dados mestre", mas como os arquivos de dados e log agora estão em pastas separadas, eu estava' não tenho certeza de qual local especificar. A partir daí, me perguntei de forma mais ampla se deveria separá-los ou se eles deveriam permanecer sempre juntos, e apenas novos bancos de dados teriam seus dados e arquivos de log movidos para unidades separadas.
Ainda não tentei mover o banco de dados mestre, devido à dúvida que tenho sobre como configurar o valor do registro e se algum dos arquivos do banco de dados do sistema deve ser separado ou mantido junto.
FWIW, não há realmente nenhum ganho de desempenho ao separar os arquivos de dados e log dos bancos de dados do sistema. Eles não estão realmente mudando muito os dados ou aqueles transacionais normalmente onde isso ajudaria em alguma coisa.
A única exceção é colocar
tempdb
(os arquivos de dados e de log) em sua própria unidade de todo o resto.Então, se você manteve todos os arquivos dos outros bancos de dados do sistema juntos, isso responde à sua pergunta:
Além disso, se o seu servidor e suas unidades forem provisionados por meio de uma VM (máquina virtual), haverá menos a ganhar (em relação ao desempenho) separando os arquivos entre as unidades, pois eles provavelmente serão provisionados logicamente como unidades separadas, mas ainda poderão ser o mesmo dispositivo físico nos bastidores.