Se eu herdei o banco de dados que cresceu para 400 GB, 1 MB de cada vez. Uma desfragmentação offline é a única maneira de remover toda a fragmentação física. Outro problema que tenho é que os arquivos de dados e log estão misturados e nas unidades RAID erradas.
Posso matar 2 coelhos com 1 pedra fazendo backup do banco de dados, excluí-lo e restaurá-lo usando WITH MOVE para colocar os arquivos nas unidades RAID corretas. Isso eliminará a fragmentação física?
Não, o backup/restauração manterá toda a fragmentação. Provavelmente é melhor adicionar um grupo de arquivos com arquivos no novo local e recriar todas as suas tabelas de usuário no novo grupo de arquivos (recriando os índices com DROP_EXISTING e como uma operação online, se possível). Você não poderá eliminar totalmente os arquivos originais, mas se tiver movido todos os objetos do usuário, poderá reduzir o arquivo de dados primário para apenas os objetos do sistema.
Se você quiser mover o arquivo MDF primário e o arquivo de log para as novas unidades RAID, você pode fazer isso com ALTER DATABASE - coloque o banco de dados offline, altere os locais de arquivos individuais, mova fisicamente os arquivos e coloque o banco de dados online novamente .
Sim, sua abordagem é uma boa maneira de fazer isso.
Supondo que você tenha espaço livre contíguo suficiente em seu volume para que o MDF possa ser criado como um arquivo.
Além disso, certifique-se de reconstruir todos os índices primeiro para que os dados também sejam organizados de maneira lógica.