Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Produto:

Banco de Dados

Versões:

Todas

Ocorrência:

Manutenção Servidor - Reduzir tamanho dos arquivos do banco de dados

Ambiente:

SQL Server

Passo a passo:

O Shrink é um recurso que nos permite reduzir o tamanho dos arquivos do banco de dados. Esta operação pode ser feita em conjunto (banco de dados inteiro), ou em um arquivo específico (dados ou log).

Primeiramente verifique se a empresa possui a rotina de efetuar backup de log e se possui auditoria de usuário ligada. Efetue um backup da base de dados e do log antes de efetuar o processo.


1. Selecione a opção de propriedades da base:
 
Image Added
 
2. Clique na opção Options:
 
Image Added
Clique na opção Options e selecione o Recovery model como Simple
 
3. Siga os procedimentos abaixo:
 
Image Added
Clique com o botão direito sobre a base > Tasks > Shrink > Files
 
4. Siga os procedimentos abaixo:
 
Image Added
Marque a opção File Type: Log e clique em ok
 
O procedimento acima também pode ser executado através do script abaixo:
 
USE [Nome da Base]
GO
DBCC SHRINKFILE (N'Nome do Log' , 0, TRUNCATEONLY)
GO
 
5. Para verificação quanto a limitação de memória do log, deve-se verificar os parâmetros abaixo:
 
Image Added

Clique com o botão direito sobre a instância da base > Properties
 
Image Added

Acesse a opção Memory – Verifique se o Maximum Server memory não está estourado. Deve ser estudado se o tamanho informado está correto ou se deve ser limitado maior espaço.



# Fica a dica referente ao erro abaixo:

The transaction log for database 'CorporeRM_TESTE' is full. To find out why space in the log cannot be reused, see the log_reus>

Segue abaixo alguns comando que podem ajudar e analisar o erro:

DBCC SQLPERF(LOGSPACE)

Fornece logs de transações e estatísticas de uso de espaço para todos os bancos de dados. Também pode ser utilizado para repor as estatísticas de espera e travamento.

LOGSPACE: Retorna o tamanho atual do log de transações e a porcentagem de espaço de log usada para cada banco de dados. Você pode usar essas informações para monitorar a quantidade de espaço utilizado em um log de transações.

DBCC SHRINKDATABASE ('nome_dabase'):  Reduz o tamanho dos

Manutenção:

Mantenha a base de dados e o servidor de banco de dados de acordo com as recomendações do documento de portabilidade da TOTVS. O documento de portabilidade pode ser obtido através do portal do cliente, onde existirá um documento por versão (XX.XX) – (Portabilidade). 
Motivo: Diversos problemas podem ocorrer na conversão relacionada à insuficiência de recursos da instancia do banco de dados ou parâmetros do banco de dados fora do padrão homologado. O modelo padrão é a base vazia disponibilizada pela TOTVS, em caso de dúvidas a mesma pode ser verificada para comparação de parâmetros.

Não executar scripts DML ou DDL diretamente na base de dados sem o aval da TOTVS. Scripts executados diretamente na base de dados podem alterar a estrutura e gerar inconsistências na base, o que no momento da conversão pode ser evidenciado ocasionando a necessidade de validação da base de dados. O processo de validação pode ser moroso e gerará custos para o cliente, visto ser um processo de consultoria de especialistas em Banco de dados.
Dois parâmetros existentes em bases SQL server podem trazer efeitos indesejados na utilização do sistema, que passam por desempenho e erros na aplicação, são eles: 
  • Auto Update Statistics – configurada como True, as estatísticas de índice são automaticamente atualizadas, podendo gerar queda de performance.
  • Auto Create Statistics – configurada como True, as estatísticas de índice são automaticamente criadas, sempre que você criar um índice, o SQL Server cria um conjunto de estatísticas sobre os dados contidos dentro do índice.
O otimizador de consulta utiliza essas estatísticas para determinar se ele deve ou não utilizar o índice para ajudar a processar a consulta. Esta opção deve estar desmarcada para não gerar estatísticas em todas as tabelas, nosso banco já tem os índices devidamente criados, por isso, agende uma rotina para executar a procedure RMATUALIZAESTATISTICAS que só atualiza das tabelas do Corpore. Ex: Quando o sistema executa um comando e que tenha uma cláusula WHERE e o Create Statistics está habilitado, o otimizador de consultas cria estatísticas até mesmo para colunas que não têm índices mas que aparecem na cláusula WHERE.
Efetuar a manutenção da base de dados, realizando a reindexação e ou reconstrução de índices e atualização de estatísticas além de monitorar o espaço para crescimentos dos arquivos de

dados e arquivos de log do banco de dados

. Verifique também a consistência física e lógica da base de dados. Estes procedimentos são de responsabilidade do DBA da empresa, caso não possua DBA a equipe de consultoria da TOTVS poderá ser acionada para esta avaliação. 

especificado.

 


 

As ilustrações seguintes mostram um log de transações antes e depois do truncamento. A primeira ilustração mostra um log de transações que nunca foi truncado. Atualmente, quatro arquivos de log virtuais estão em uso pelo log lógico. O log virtual inicia à frente do primeiro arquivo de log virtual e termina em log 4 virtual. O registro de MinLSN está em log 3 virtual. O log 1 virtual e o log 2 virtual contêm apenas registros de log inativos. Estes registros podem ser truncados. O log 5 virtual ainda está sem uso e não é parte do log lógico atual.

 

Log de transação com quatro logs virtuaisImage Added

 

A segunda ilustração mostra como o log aparece depois de ser truncado. Log 1 virtual e log 2 virtual foram liberados para reutilização. O log lógico agora inicia no começo do log 3 virtual. O log 5 virtual ainda está sem uso e não é parte do log lógico atual.

 

Arquivo de log dividido em quatro arquivos de log virtuaisImage Added

Recomendamos que o DBA avalie a periodicidade para execução destas procedures, caso não possua DBA, execute as mesmas na seguinte periodicidade:

Reindexão de Indices (Index_defrag2.sql) – Semanalmente
Atualização de Estatisticas (RMatualizaestatisticas.sql) - Diariamente

 

Observações:

Para mais informações:

 

   COMUNIDADE  R@Tecnologia

 Canais de Atendimento:

Abertura de Chamados Através do Portal Totvs www.suporte.totvs.com.br

Telefônico: 4003-0015 Escolhendo as opções 2 – (Software), 2 – (Suporte Técnico), 3 – (RM), 8 – (Tecnologia), 2 – (Banco de Dados)