ID do artigo: 328551 - Última revisão: sexta-feira, 13 de março de 2009 - Revisão: 12.0 Aprimoramentos de simultaneidade para o banco de dados tempdb
BUG #: 362099 (SHILOH_BUGS) Nesta páginaSintomasAo banco de dados tempdb for muito usado, SQL Server pode enfrentar contenção quando ele tenta alocar páginas. Da saída sysprocesses sistema tabela, o waitresource pode mostrar como "2: 1: 1" (PFS página) ou "2: 1: 3" (SGAM página). Dependendo do grau de contenção, isso também pode levar ao SQL Server aparecendo responder por curtos períodos. Essas operações muito usam tempdb :
CausaDurante a criação de objeto, páginas de dois (2) devem ser alocadas de uma extensão mista e atribuídas ao novo objeto. Uma página é para o índice de mapa de alocação (IAM) e o segundo é para a primeira página para o objeto. SQL Server controla extensões mistas usando o compartilhada global alocação mapa (SGAM) páginas. Cada página SGAM acompanha cerca de 4 gigabytes de dados. Como parte de alocação de uma página de extensão mista, SQL Server deve verificar a página de espaço livre em página (PFS) para descobrir qual página mista está livre para ser alocada. O PFS página mantém o controle de espaço livre disponível em cada página, e cada página PFS controla páginas sobre 8000. Sincronização apropriado é mantida para fazer alterações em páginas PFS e SGAM; e que pode vaga outros modificadores por curtos períodos. Quando o SQL Server procura uma página de mista para alocar, ele sempre inicia a verificação no mesmo arquivo e SGAM página. Isso resulta em intensa contenção na página SGAM quando vários misto página alocações estão em andamento, que pode causar problemas documentados na seção "Sintomas" deste artigo. Observação Atividades desalocação também devem modificar as páginas, que podem contribuir para a contenção maior. Para obter mais informações sobre os mecanismos de alocação diferentes usados pelo SQL Server (SGAM GAM, PFS, IAM), consulte a seção "Referências" deste artigo. ResoluçãoPara reduzir a contenção de recursos de alocação para tempdb que está apresentando uso pesado, execute todas essas etapas:
Com relação à etapa 2, o uso de sinalizador de rastreamento - T1118 para o Microsoft SQL Server 7.0, antes de usar o sinalizador de rastreamento, consulte o seguinte artigo na Base de dados de Conhecimento da Microsoft: 813492
(http://support.microsoft.com/kb/813492/
)
CORRECÇÃO: Criar índice falha no SQL Server 7.0 quando o sinalizador de rastreamento 1118 está habilitado Informações sobre o service packPara resolver esse problema, obtenha o service pack mais recente para o Microsoft SQL Server 2000. Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:290211
(http://support.microsoft.com/kb/290211/
)
Como obter o SQL Server 2000 service pack mais recente Informações sobre o hotfixHotfix 8.00.0702A versão em inglês deste hotfix tem atributos de arquivo (ou atributos de arquivo posteriores) listados na tabela a seguir. As datas e horas desses arquivos estão listadas no horário de universal coordenado (UTC). Quando você exibe as informações do arquivo, ele é convertido para a hora local. Para encontrar a diferença entre o UTC e a hora local, use a guia fuso horário no item Data e hora no painel de controle.Date Time Version Size File name ---------------------------------------------------------------- 30-Aug-2002 21:08 786,432 Distmdl.ldf 30-Aug-2002 21:08 2,359,296 Distmdl.mdf 09-Oct-2002 00:54 544 Drop_repl_hotfix.sql 02-Jul-2002 15:35 2000.80.650.0 107,088 Impprov.dll 19-Jul-2002 16:56 774,516 Instdist.sql 08-Oct-2002 23:56 12,615 Inst_repl_hotfix.sql 20-Aug-2002 16:24 2000.80.679.0 111,172 Logread.exe 07-Apr-2002 02:08 2000.80.606.0 62,024 Odsole70.dll 03-Jan-2002 01:59 18,185 Qfe356326.sql 20-Aug-2002 16:47 2000.80.679.0 135,748 Qrdrsvc.exe 26-Aug-2002 22:49 2000.80.679.0 406,088 Rdistcom.dll 04-Oct-2001 01:36 437,302 Replcom.sql 20-Aug-2002 16:33 2000.80.679.0 152,136 Replmerg.exe 19-Nov-2001 20:36 993,945 Replmerg.sql 05-Nov-2002 23:48 2000.80.700.0 221,768 Replprov.dll 04-Oct-2001 01:36 986,906 Replsys.sql 04-Oct-2001 01:36 881,228 Repltran.sql 26-Aug-2002 22:49 2000.80.679.0 283,208 Rinitcom.dll 16-Sep-2002 22:31 390,045 Securityhotfix.sql 26-Aug-2002 22:49 2000.80.679.0 28,672 Sqlagent.dll 26-Aug-2002 18:39 2000.80.679.0 311,872 Sqlagent.exe 28-Aug-2002 16:32 2000.80.679.0 49,152 Sqlagent.rll 26-Aug-2002 22:49 2000.80.679.0 53,824 Sqlcmdss.dll 28-Aug-2002 16:40 2000.80.679.0 12,288 Sqlcmdss.rll 24-Oct-2002 17:37 2000.80.695.0 176,696 Sqlmap70.dll 11-Nov-2002 09:52 2000.80.702.0 7,471,185 Sqlservr.exe 11-Nov-2002 09:51 12,633,088 Sqlservr.pdb 01-Nov-2002 18:56 2000.80.698.0 45,644 Sqlvdi.dll 01-Nov-2002 18:00 2000.80.697.0 82,492 Ssnetlib.dll 07-Apr-2002 02:08 2000.80.606.0 70,208 Xplog70.dll 07-Apr-2002 02:08 2000.80.606.0 53,828 Xpqueue.dll 07-Apr-2002 02:08 2000.80.606.0 156,228 Xprepl.dll 12-Jul-2002 01:00 2000.80.658.0 279,104 Xpstar.dll 16-Sep-2002 23:12 2000.80.686.0 98,872 Xpweb70.dll
SituaçãoA Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a". Esse problema foi corrigido primeiro no Microsoft SQL Server 2000 Service Pack 4. Mais InformaçõesComo o Hotfix 8.00.0702 reduz a contençãoHotfix 8.00.0702 apresenta um algoritmo de rodízio para alocações de página misto. Com a correção, o arquivo inicial agora será diferente para cada alocação de página consecutivos misto (se existir mais de um arquivo). Isso evita o problema de contenção, dividindo o trem passou pelo SGAMs na mesma ordem sempre com o mesmo ponto de partida. O novo algoritmo de alocação para SGAM está puro round-robin e não aceitar o preenchimento proporcional para manter a velocidade. A Microsoft recomenda que você crie tempdb arquivos de dados com o mesmo tamanho.Como implementar rastrear sinalizador - T1118 disputaAqui é a lista de como usar de -T1118 disputa:
837938
(http://support.microsoft.com/kb/837938/
)
Você pode receber uma mensagem de erro ao tentar restaurar um backup do banco de dados SQL Server 7.0 em uma instância do SQL Server 2000 Aumentar o número de arquivos de dados tempdb com dimensionamento igualSe o tamanho do arquivo de dados de tempdb é 5 GB e o tamanho de arquivo de log é de 5 GB, a recomendação é aumentar o único arquivo de dados para 10 (cada 500 MB para manter o dimensionamento de igual) e deixar o arquivo de log como está. Ter os arquivos de dados diferentes em discos separados seriam bons. No entanto, isso não é necessário e eles podem coexistir no mesmo disco.O número ideal de arquivos de dados tempdb depende o grau de contenção visto em tempdb . Como um ponto de partida, você pode configurar o tempdb para ser pelo menos igual ao número de processadores, designado para o SQL Server. Para sistemas de end superiores (por exemplo, 16 ou 32 proc), o número inicial poderia ser 10. Se a contenção não será reduzida, talvez seja necessário aumentar o número de arquivos de dados mais. Observação Um processador dual-core é considerado dois processadores. O dimensionamento dos arquivos de dados igual é crítico porque o algoritmo de preenchimento proporcional se baseia o tamanho dos arquivos. Se arquivos de dados são criados com diferentes tamanhos, o algoritmo de preenchimento proporcional tenta usar o arquivo maior mais para alocações GAM em vez de disseminar as alocações de entre todos os arquivos, assim, invalidando a finalidade da criação de vários arquivos de dados. Auto-grow dos arquivos de dados tempdb também podem interferir com o algoritmo de preenchimento proporcional. Portanto, talvez seja aconselhável desativar o recurso auto-grow para os arquivos de dados tempdb . Se a opção auto-grow estiver desativada, você deve verificar criar os arquivos de dados de modo que eles são grandes o suficiente para impedir que o servidor tendo uma falta de espaço em disco com tempdb . Como aumentar o número de dados tempdb arquivos com dimensionamento igual disputaAqui está uma lista de como aumentar o número de arquivos de dados tempdb com dimensionamento igual disputa:
DesvantagensA única desvantagem para as recomendações mencionado é que você pode ver o tamanho dos bancos de dados aumentar quando as seguintes condições forem verdadeiras:
ReferênciasPara obter mais informações sobre GAM SGAM, PFS e IAM, consulte os seguintes tópicos livros online do SQL Server 2000:
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 traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado. Clique aqui para ver a versão em Inglês deste artigo: 328551
(http://support.microsoft.com/kb/328551/en-us/
)
| Outros Recursos Outros Sites de Suporte
ComunidadesObtenha Ajuda AgoraTraduções deste artigo
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email


Voltar para o início