Tenha um único banco de dados de 500 GB com um único grupo de arquivos composto por 4 arquivos de dados. Isso ocorreu devido a antigas restrições de espaço de volume SAN que não estão mais em jogo na nova SAN. Gostaria de consolidar esses 4 arquivos de dados de volta em um único arquivo de dados, se possível. Quais são as diferentes maneiras de consolidar esses arquivos de dados em um único arquivo de dados?
SQL 2019 CU14
Conforme mencionado nos comentários, há vários motivos pelos quais você deseja manter vários arquivos, principalmente do ponto de vista do desempenho .
Se você está convencido de que deseja combinar tudo em um único arquivo, você pode usar DBCC SHRINKFILE com a opção EMPTYFILE. Essa opção move todos os dados do arquivo especificado e os distribui pelos arquivos restantes no grupo de arquivos. Você repete isso três vezes, uma vez para cada um dos arquivos que deseja remover, deixando para trás um único arquivo com todos os dados.
À medida que cada arquivo é esvaziado, ele redistribui os dados pelos arquivos restantes, eventualmente enviando todos os dados para o último arquivo restante.
Uma opção alternativa é criar um novo grupo de arquivos com um único arquivo e reconstruir todos os objetos do grupo de arquivos atual no novo grupo de arquivos.
A desvantagem dessa opção é que você precisa dobrar a quantidade de espaço em disco até que toda a movimentação de dados seja concluída. O método EMPTYFILE permite recuperar espaço imediatamente à medida que cada arquivo é esvaziado, reduzindo os requisitos de espaço.