Temos um grupo de arquivos principal com vários arquivos, cada um em discos diferentes. Um dos discos está quase cheio e, como tal, tivemos que desativar o crescimento automático desse arquivo. Há algo que eu deva considerar ao fazer isso?
Não acredito que possa forçar uma tabela a estar em um arquivo específico quando todos estão no mesmo grupo de arquivos; portanto, do ponto de vista do administrador, não consegui pensar em nada.
Está correto, você não tem o controle granular direto sobre as alocações de arquivos, apenas o grupo de arquivos.
Com isso em mente, você tem algumas opções. A primeira seria criar um novo grupo de arquivos e isolar todas as tabelas necessárias para fornecer o resultado final desejado de não encher a unidade. Outra, que eu diria ser provavelmente uma das melhores opções, é colocar o arquivo em questão em um local com mais espaço ou adicionar mais espaço ao volume existente. Eu estou supondo que você não estaria fazendo esta pergunta se isso fosse uma possibilidade, no entanto.
Outra rota seria aproveitar o comportamento de preenchimento proporcional que o SQL Server implementa (o que determina que ele tentará preencher todos os arquivos do grupo de arquivos ao mesmo tempo) e dimensionar (maior) os outros arquivos no grupo de arquivos. Isso deve se traduzir em uma porcentagem maior das alocações nesses outros arquivos, pois eles exigirão mais pela proporção de espaço livre ( consulte este documento BOL para entender melhor o preenchimento proporcional ). Embora eu pessoalmente ache que é um hack e uma solução alternativa na melhor das hipóteses, e apenas prolongará o inevitável de encher sua unidade.