Existe uma outra maneira para os arquivos de dados para bancos de dados de usuários que não exigem indisponibilidade, apenas uma degradação de desempenho - mas é para DBAs experientes. Para arquivos maiores, você também está à mercê da velocidade do disco IO. Sempre faça isso em pré-produção primeiro!
Métodos:
1 - desanexar e reconectar - fácil, mas requer uma interrupção para esse banco de dados
2 - backup e restauração - quase tão fácil, requer uma interrupção mais curta - mas você precisa ter cuidado.
3 - se você tiver um arquivo de dados: crie um novo arquivo de dados na unidade certa, e selecione o arquivo de dados original de sys.sysfiles - e execute algo como DBCC SHRINKFILE (nome de arquivo lógico, emptyfile) - isso esvaziará os dados do arquivo e coloque-o no novo arquivo de dados. Então você exclui o arquivo de dados original.