Preciso mover um arquivo de log do banco de dados para uma nova partição sem colocar o banco de dados offline.
A maneira normal de fazer isso seria desanexar o banco de dados, mover o arquivo de log e reanexar o banco de dados.
É possível fazer isso sem colocar o próprio banco de dados offline e, em caso afirmativo, como?
Não há como fazer isso com um banco de dados online.
Quando você move um arquivo de banco de dados (
ALTER DATABASE ... MODIFY FILE
), você ainda recebe a seguinte mensagem:Essa não é a maneira "normal" ou aceita que eu faria. Para mover arquivos de banco de dados, faço o seguinte:
Consulte esta referência no TechNet: Mover bancos de dados do usuário
De acordo com a referência no TechNet Move User Databases da resposta de Thomas Stringer , se você deseja mover os arquivos sem interromper toda a instância do SQL Server (seguindo o "Procedimento de realocação planejada"), a ordem deve ser:
Observe o OFFLINE primeiro; depois mova os arquivos e informe ao SQL Server sobre os novos locais.
Se você precisar desativar toda a instância do SQL Server (consulte o procedimento "Relocação para manutenção de disco agendada"), é melhor modificar primeiro os locais dos arquivos para que, quando a instância for reiniciada, não haja problemas para encontrar os arquivos nos novos locais.
Eu sei que esta é uma pergunta antiga, mas você não pode simplesmente adicionar um segundo arquivo de log (que é usado pelo banco de dados em vez do original) no novo local e reduzir/remover o original?