Artigo: 307487 - Última revisão: terça-feira, 20 de Outubro de 2009 - Revisão: 6.0 Como reduzir a base de dados tempdb no SQL ServerNesta páginaSumárioEste artigo descreve três métodos que pode utilizar para diminuir a base de dados tempdb para um tamanho mais pequeno do que o respectivo tamanho configurado último. O primeiro método dá-lhe controlo total do tamanho dos ficheiros tempdb, mas requer que reinicie o SQL Server. O segundo método diminui o tempdb como um todo, com algumas limitações que poderá incluir a reiniciar o SQL Server. O terceiro método permite-lhe diminuir ficheiros individuais no tempdb. Os últimos dois métodos requerem que sem actividade ocorrer na base de dados tempdb durante a operação de redução. Nota Se estiver a utilizar o SQL Server 2005, estes métodos também se aplicam. No entanto, deverá utilizar SQL Server Management Studio em vez do Enterprise Manager e Query Analyzer para efectuar estas operações. Mais, tenha em atenção que o estúdio de gestão de SQL Server em 2005 não mostra o tamanho correcto dos ficheiros de tempdb após uma operação de redução. O valor 'Actualmente atribuído espaço' sempre é retirado do sys.master_files DMV e este valor não é actualizada depois de uma operação de redução acontece para a base de dados tempdb. Para localizar o tamanho correcto do tempdb ficheiros após uma operação de redução execute a seguinte instrução no estúdio de gestão: Nota SQL Server 2008 não é afectado por este problema (GUI mostrando tamanho incorrecto). Informações de TempDBO tempdb é uma área de trabalho temporária. Entre outras utilizações, o SQL Server utiliza tempdb para:
Por predefinição, a base de dados tempdb está configurado para autogrow conforme necessário; por conseguinte, esta base de dados pode crescer a tempo para um tamanho maior do que desejar. Um reinício simples do SQL Server repõe o tamanho do tempdb para o respectivo tamanho configurado último. O tamanho configurado é o último tamanho explícito definido com um tamanho de ficheiro alterar operação como, por exemplo, ALTER DATABASE com a opção de modificar o ficheiro ou a instrução DBCC SHRINKFILE. Este artigo apresenta três métodos que pode utilizar para diminuir tempdb para um tamanho mais pequeno do que o respectivo tamanho configurado. Método 1 para encolher TempdbEste método requer que reinicie o SQL Server.
Método 2 para encolher TempdbUtilize o comando DBCC SHRINKDATABASE para diminuir a base de dados tempdb como um todo. DBCC SHRINKDATABASE recebe parâmetro percentagem_de_destino, que é a percentagem pretendida da esquerda de espaço livre no ficheiro de base de dados depois da base de dados é diminuído. Se utilizar DBCC SHRINKDATABASE, poderá ter de reiniciar o servidor de SQL.Importante: Se executar DBCC SHRINKDATABASE, sem actividade pode estar a ocorrer com a base de dados tempdb. Para se certificar de que outros processos não é possível utilizar tempdb enquanto é executado o DBCC SHRINKDATABASE, tem de iniciar o SQL Server no modo de utilizador único. Para mais informações consulte a secção Effects of Execution of DBCC SHRINKDATABASE or DBCCSHRINKFILE While Tempdb Is In Use deste artigo.
Método 3 para encolher TempdbUtilize o comando DBCC SHRINKFILE para diminuir ficheiros individuais tempdb. DBCC SHRINKFILE fornece mais flexibilidade do que DBCC SHRINKDATABASE porque pode utilizá-lo num ficheiro de base de dados única sem afectar outros ficheiros que pertencem à mesma base de dados. DBCC SHRINKFILE recebe o parâmetro de tamanho de destino, que é o tamanho final pretendido para o ficheiro de base de dados.Importante: tem de executar o comando de DBCC SHRINKFILE enquanto sem actividade ocorre na base de dados tempdb. Para se certificar de que outros processos não é possível utilizar tempdb enquanto executa DBCC SHRINKFILE, tem de reiniciar o SQL Server no modo de utilizador único. Para obter mais informações sobre DBCC SHRINKFILE, consulte a secção Effects of Execution of DBCC SHRINKDATABASE or DBCCSHRINKFILE While Tempdb Is In Use deste artigo.
No SQL Server 7.0 diminuir um registo de transacções é uma operação diferida e tem que emitir uma truncagem do registo e a cópia de segurança para ajudar a operação de redução de uma base de dados. No entanto, por predefinição, tempdb tem a opção de truncagem sessão chkpt definir; por conseguinte, aí é não necessário emitir uma truncagem do registo para essa base de dados. Para obter informações adicionais como para diminuir uma base de dados de transacção iniciar sessão no SQL Server 7.0, clique no número de artigo existente abaixo para visualizar o artigo na base de dados de conhecimento da Microsoft: 256650
(http://support.microsoft.com/kb/256650/EN-US/
)
INF: Como reduzir o registo de transacções do SQL Server 7.0 Efeitos da execução do DBCC SHRINKDATABASE ou DBCCSHRINKFILE enquanto Tempdb está em utilizaçãoSe tempdb está em utilização e tentar diminuir utilizando os comandos DBCC SHRINKDATABASE ou DBCC SHRINKFILE, poderá receber vários erros de coerência semelhantes à seguinte tipo e a operação de diminuição poderá falhar:Servidor: Erro 2501, 16 de nível State 1, linha 1 não foi possível localizar a tabela com o nome '1525580473'. Verifique sysobjects. - ou - Erro de servidor: 8909, 16 de nível 1 de estado, danificados da tabela Linha 0: objecto ID 1, ID de índice 0, página ID % S_PGID. PageId no cabeçalho da página = % S_PGID. REFERÊNCIASSQL Server Books Online; tópicos: "DBCC SHRINKFILE"; "DBCC SHRINKDATABASE"A informação contida neste artigo aplica-se a:
Tradução automáticaIMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado. Clique aqui para ver a versão em Inglês deste artigo: 307487
(http://support.microsoft.com/kb/307487/en-us/
)
| Traduções de Artigos
|


Voltar ao topo
