Eventos
31 de mar., 23 - 2 de abr., 23
O maior evento de aprendizado de SQL, Fabric e Power BI. 31 de março a 2 de abril. Use o código FABINSIDER para economizar $ 400.
Registre-se hoje mesmoNão há mais suporte para esse navegador.
Atualize o Microsoft Edge para aproveitar os recursos, o suporte técnico e as atualizações de segurança mais recentes.
Aplica-se a: SQL Server
Banco de Dados SQL do Azure
Instância Gerenciada de SQL do Azure
Este artigo descreve como reduzir um arquivo de log ou de dados no SQL Server usando o SQL Server Management Studio ou Transact-SQL.
A redução de arquivos de dados recupera espaço com a movimentação de páginas de dados do final do arquivo para o espaço desocupado mais próximo à frente do arquivo. Quando espaço livre suficiente é criado no final do arquivo, as páginas de dados no final do arquivo podem ser desalocadas e retornadas para o sistema de arquivos.
model
.Uma operação de redução é mais eficiente depois de uma operação que cria uma grande quantidade de espaço de armazenamento não utilizado, como uma grande instrução DELETE, truncar tabela ou uma operação de remover tabela.
A maioria dos bancos de dados exige algum espaço livre disponível para operações comuns rotineiras. Se você reduzir um arquivo de banco de dados repetidamente e perceber que ele aumentou novamente, isso indica a necessidade de espaço livre para as operações regulares. Nesses casos, reduzir repetidamente um banco de dados é uma operação inútil. Os eventos de crescimento automático necessários para aumentar o arquivo de banco de dados prejudicam o desempenho.
Os dados movidos para reduzir um arquivo podem ser espalhados para qualquer local disponível no arquivo. Isso provoca uma fragmentação do índice e pode reduzir a velocidade do desempenho de consultas que pesquisam um intervalo do índice. Para eliminar a fragmentação, considere a recompilação dos índices no arquivo após a redução.
A menos que você tenha um requisito específico, não defina a opção de banco de dados AUTO_SHRINK como ON.
As operações de redução em andamento podem bloquear outras consultas no banco de dados e podem ser bloqueadas por consultas já em andamento. Introduzidas no SQL Server 2022 (16.x), as operações de redução de arquivo têm uma opção WAIT_AT_LOW_PRIORITY. Esse recurso é uma nova opção adicional para DBCC SHRINKDATABASE
e DBCC SHRINKFILE
. Se uma nova operação de redução em modo WAIT_AT_LOW_PRIORITY não puder obter os bloqueios necessários devido a uma execução prolongada de consulta já em andamento, a operação de redução atingirá o tempo limite após um minuto e se encerrará silenciosamente, impedindo que outras consultas sejam bloqueadas. WAIT_AT_LOW_PRIORITY se aplica a arquivos de dados (.mdf e .ndf). Ele não se aplica a arquivos de log de transações. Para obter mais informações, confira DBCC SHRINKFILE.
Exige associação à função de servidor fixa sysadmin ou à função de banco de dados fixa db_owner .
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados do SQL Server e expanda-a.
Expanda Bancos de Dados e clique com o botão direito do mouse no banco de dados que deseja reduzir.
Aponte para Tarefas, depois para Reduzir e selecione Arquivos.
Backup de banco de dados
Exibe o nome do banco de dados selecionado.
Tipo de arquivo
Seleciona o tipo de arquivo para o arquivo. As escolhas disponíveis são arquivos de Dados e de Log . A seleção padrão é Dados. Selecionar um tipo diferente de grupo de arquivos altera as seleções nos outros campos de acordo o tipo selecionado.
Grupo de arquivos
Selecione um grupo de arquivos da lista de grupos de arquivos associado com o Tipo de arquivo selecionado acima. Selecionar um grupo de arquivos diferente altera as seleções nos outros campos de acordo o grupo selecionado.
Nome do arquivo
Selecione um arquivo da lista de arquivos disponíveis do grupo de arquivos e tipo de arquivos selecionados.
Localidade
Exibe o caminho completo para o arquivo atualmente selecionado. O caminho não é editável, mas pode ser copiado para a área de transferência.
Espaço alocado no momento
Para arquivos de dados, exibe o espaço alocado no momento. Para arquivos de log, exibe o espaço alocado no momento computado da saída de DBCC SQLPERF(LOGSPACE)
.
Espaço livre disponível
Para arquivos de dados, exibe o espaço livre disponível no momento computado da saída de DBCC SHOWFILESTATS(fileid)
. Para arquivos de log, exibe o espaço livre disponível no momento computado da saída de DBCC SQLPERF(LOGSPACE)
.
Liberar espaço não utilizado
Faz com que qualquer espaço não utilizado nos arquivos seja liberado para o sistema operacional e reduz o arquivo para a última extensão alocada, reduzindo o tamanho do arquivo sem mover nenhum dado. Não é feita nenhuma tentativa para realocar linhas em páginas não alocadas.
Reorganizar páginas antes de liberar espaço não utilizado
Equivale a executar DBCC SHRINKFILE
especificando o tamanho do arquivo de destino. Quando essa opção é selecionada, o usuário deve especificar um tamanho de arquivo de destino na Reduzir arquivo a .
Reduzir arquivo a
Especifica o tamanho do arquivo de destino para a operação de redução. O tamanho não pode ser menor do que o espaço alocado no momento nem mais do que a extensão total alocada para o arquivo. Digitar um valor abaixo do mínimo ou além do máximo fará com que ele reverta ao mínimo ou ao máximo assim que o foco for alterado ou quando você selecionar qualquer botão da barra de ferramentas.
Esvaziar o arquivo migrando os dados para outros arquivos do mesmo grupo
Migra todos os dados do arquivo especificado. Essa opção permite descartar o arquivo usando a instrução ALTER DATABASE. Essa opção é equivalente a executar DBCC SHRINKFILE
com a opção EMPTYFILE
. Não há suporte a EMPTYFILE
no Banco de Dados SQL do Azure ou na Hiperescala do Banco de Dados SQL do Azure.
Selecione o tipo e o nome do arquivo.
Opcionalmente, marque a caixa de seleção Liberar espaço não utilizado .
Selecionar essa opção faz com que qualquer espaço não usado no arquivo seja liberado para o sistema operacional e reduz o arquivo à última extensão alocada. Isso reduz o tamanho do arquivo sem mover quaisquer dados.
Opcionalmente, marque a caixa de seleção Reorganizar arquivos antes de liberar o espaço não utilizado . Se isso for selecionado, o valor Reduzir arquivo para deve ser especificado. Por padrão, a opção fica desmarcada.
Selecionar essa opção faz com que qualquer espaço não usado no arquivo seja liberado para o sistema operacional e tenta realocar linhas a páginas não alocadas.
Opcionalmente, insira a porcentagem máxima de espaço livre a ser deixado no arquivo de banco de dados após o banco de dados ter sido reduzido. Os valores permitidos estão entre 0 e 99. Essa opção só está disponível quando Reorganizar arquivos antes de liberar o espaço não utilizado estiver habilitada.
Opcionalmente, marque a caixa de seleção Esvaziar arquivo migrando os dados para outros arquivos no mesmo grupo de arquivos .
Selecionar essa opção move todos os dados do arquivo especificado para outros arquivos no grupo de arquivos. O arquivo vazio pode, então, ser excluído. Essa opção é igual a executar DBCC SHRINKFILE
com a opção EMPTYFILE.
Selecione OK.
Conecte-se ao Mecanismo de Banco de Dados.
Na barra Padrão, selecione Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e selecione Executar. Este exemplo usa DBCC SHRINKFILE para reduzir o tamanho de um arquivo de dados denominado DataFile1
no banco de dados UserDB
para 7 MB.
USE UserDB;
GO
DBCC SHRINKFILE (DataFile1, 7);
GO
Eventos
31 de mar., 23 - 2 de abr., 23
O maior evento de aprendizado de SQL, Fabric e Power BI. 31 de março a 2 de abril. Use o código FABINSIDER para economizar $ 400.
Registre-se hoje mesmoTreinamento
Módulo
Configurar recursos do SQL Server para o desempenho ideal - Training
Configurar recursos do SQL Server para o desempenho ideal
Certificação
Microsoft Certified: Azure Database Administrator Associate - Certifications
Administrar uma infraestrutura de banco de dados do SQL Server para bancos de dados relacionais de nuvem, locais e híbridos usando as ofertas de banco de dados relacional do Microsoft PaaS.