Acabei de fazer um boo-boo na minha instância SQL pessoal. Eu queria mover os arquivos tempdb para C:\tempdb.mdf e C:\templog.ldf, respectivamente. O comando alter database ...modify file... foi executado com sucesso. No entanto, o que eu não percebi é que não posso criar um arquivo em C:\ , apenas pastas podem ser criadas lá. Portanto, após executar o comando modify file e reiniciar o serviço, os novos arquivos não foram criados, ou seja, C:\tempdb.mdf e C:\templog.ldf.
Quando tentei obter as propriedades do banco de dados tempdb para ver para onde os arquivos estavam apontando, descobri que não conseguia obter as propriedades nem me conectar à instância do banco de dados. Portanto, embora eu possa reiniciar os serviços no Config Manager, não consigo me conectar à instância usando SSMS ou SQLCMD. Eu recebo o erro que o arquivo não pode ser encontrado.
Além de reinstalar a instância (já que não tenho backup do banco de dados mestre), existe alguma outra maneira de corrigir esse problema, por favor?
Obrigada.
Acredito que você possa inicializar a instância do SQL Server no modo de configuração mínima e conectar-se a ela por meio do prompt de comando com o SQLCMD, conforme discutido neste artigo: Como iniciar o SQL Server se você perdeu arquivos de dados TEMPDB . Observe que isso colocará o servidor no modo de usuário único.
Depois de se conectar a ele, você poderá executar
ALTER DATABASE tempdb MODIFY FILE
e modificar os locais dos arquivos para um local apropriado. Em seguida, desligue e reinicie a instância.Passos do artigo acima mencionado para referência: