CORRECÇÃO: Você pode enfrentar corrupção de pilha e SQL Server 2000 pode desligar com violações de acesso fatal ao tentar procurar arquivos no SQL Server 2000 Enterprise Manager no computador Windows Server 2003 x 64

Traduções deste artigo Traduções deste artigo
ID do artigo: 916950 - Exibir os produtos aos quais esse artigo se aplica.
Bug: # 40000113 (Hotfix do SQL)
A Microsoft distribui correções do Microsoft SQL Server 2000 como um arquivo para download. Como as correções são cumulativas, cada versão nova contém todos os hotfixes e todas as as correções de segurança que foram incluídas com o SQL Server 2000 anterior corrigir lançamento.
Expandir tudo | Recolher tudo

Neste artigo

Sumário

Este artigo descreve o seguinte sobre esta versão de hotfix:
  • Problemas corrigidos por esse pacote de hotfix
  • Os pré-requisitos para instalar o pacote de hotfix
  • Informações sobre se é necessário reiniciar o computador depois de instalar o pacote de hotfix
  • Informações sobre se o pacote de hotfix é substituído por qualquer outro pacote de hotfix
  • Informações sobre se você deve fazer alterações no registro
  • Arquivos que estão contidos no pacote de hotfix

Sintomas

Considere o seguinte cenário. Microsoft SQL Server 2000 Enterprise Manager está em execução no Microsoft Windows Server 2003 x 64 computador baseado em Edition. Tentar procurar arquivos e você clicar no botão reticências (... ) na caixa de diálogo qualquer arquivo no SQL Server 2000 Enterprise Manager. Nesse cenário, você pode enfrentar corrupção de pilha e o SQL Server pode desligar com violações de acesso fatal.

Outros segmentos ou objetos, como Microsoft Component objetos COM (modelo de objeto) podem ser carregados no SQL Server usando o procedimento de sp_oacreate armazenados. Quando esse comportamento ocorre, OLEDB vinculados provedores de servidor que são executados no processo, SQL Mail, ou SQLXML também pode ser afetado e pode causar o desligamento de processo do SQL Server. Além disso, você também pode enfrentar esse problema em instâncias em cluster.

anotações
  • Esse problema afeta apenas as edições de 32 bits do SQL Server 2000 executados no Windows no subsistema Windows 64 (WOW64) no Windows Server 2003 edições x 64.
  • Esse problema de corrupção de heap não afeta qualquer uma das edições de SQL Server 2000 64 bits, como essas edições que são executados em IA-64 sistemas operacionais que usam a arquitetura Intel Itanium 2.
  • Esse problema não afeta as edições de 32 bits do SQL Server que estão no subsistema WOW64 em sistemas operacionais de IA-64.
  • Esse problema não afeta as edições do Microsoft SQL Server 2005.
Esse problema pode ocorrer devido o sistema xp_availablemedia procedimento armazenado estendido. Quando você clica o botão de reticências (... ) na interface do usuário gráfica (GUI), o sistema xp_availablemedia procedimento armazenado estendido pode ser chamado para executar a operação de procura do arquivo. Em uma instância em cluster, Enterprise Manager chama o procedimento sp_MSSharedFixedDisk armazenados e o procedimento sp_MSSharedFixedDisk armazenados chama o sistema xp_availablemedia procedimento armazenado estendido.

Você pode não perceber a corrupção de heap até que outros threads utilize heap padrão ou memória heap é liberada. Qualquer módulo que é executado dentro do processo de Sqlservr.exe pode compartilhar o heap padrão em um processo. Portanto, esse tipo de corrupção de pilha pode afetar Xpstar.dll e outros módulos no qual o sistema xp_availablemedia procedimento armazenado estendido é compilado.

Para obter uma lista de todos os hotfixes lançados publicamente do SQL Server 2000 Service Pack, consulte o seguinte artigo na Base de dados de Conhecimento da Microsoft:
894905Lista cumulativa de hotfixes que estão disponíveis para o SQL Server 2000 SP4

Resolução

O instalador não instala esse hotfix corretamente em sistemas com base em 64 x. Esse problema de instalação ocorre quando as seguintes condições forem verdadeiras:
  • O sistema usa a arquitetura de processador de tecnologia de memória estendida Intel64 (EM64T) ou a arquitetura de processador AMD64 AMD (Advanced Micro dispositivos).

    Observação Esse problema não ocorre em sistemas que usam a arquitetura do processador Intel Itanium.
  • O sistema está executando uma versão de 64-bit do sistema operacional Microsoft Windows Server.
  • O sistema está executando uma versão 32-bit do SQL Server 2000.
Podemos ter corrigido esse problema de instalação em compilações posteriores do SQL Server 2000, começando com a versão 8.00.2244. Quando um cliente que esteja executando o SQL Server 2000 em um sistema de 64 x solicita esse hotfix, forneceremos uma compilação que inclui esse hotfix e que pode ser instalado corretamente em um sistema de 64 x. A compilação que fornecemos será versão 8.00.2244 ou uma versão posterior.

Informações sobre o hotfix

Um hotfix suportado está disponível no Microsoft. No entanto, esse hotfix destina-se a corrigir o problema descrito neste artigo. Aplique-o somente aos sistemas que apresentarem esse problema específico.

Se o hotfix está disponível para download, há uma seção "Download de Hotfix disponível" na parte superior neste artigo da Base de dados de Conhecimento. Se esta seção não for exibido, envie uma solicitação para suporte e atendimento ao cliente Microsoft para obter o hotfix.

Observação Se ocorrerem problemas adicionais ou se qualquer solução de problemas é necessária, talvez você precise criar uma solicitação de serviço separada. Os custos normais de suporte serão aplicados a questões de suporte adicionais e problemas que não se qualificam para esse hotfix específico. Para obter uma lista completa de números de telefone de suporte e Atendimento Microsoft ou para criar uma solicitação de serviço separada, visite o seguinte site:
http://support.microsoft.com/contactus/?ws=support
Observação O formulário "Download de Hotfix disponível" exibe os idiomas para os quais o hotfix está disponível. Se você não vir seu idioma, é porque um hotfix não está disponível para esse idioma.

Pré-requisitos

Você deve ter o Microsoft SQL Server 2000 Service Pack 4 (SP4) instalado para aplicar esse hotfix.

Para obter mais informações sobre como obter o SQL Server Service Pack 4, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
290211Como obter o SQL Server 2000 service pack mais recente

Informações sobre reinicialização

Depois de instalar esse hotfix, o serviço do SQL Server será reiniciado automaticamente.

Informações do registro

Não é necessário alterar o registro.

Informações sobre o arquivo de hotfix

Esse hotfix contém apenas os arquivos que são necessárias para corrigir os problemas que este artigo lista. Este hotfix não pode conter de todos os arquivos que você deve ter para actualizar completamente um produto para a compilação mais recente.

A 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 são listadas na hora universal coordenada (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.
SQL Server 2000 de 32 bits
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Dtsui.dll2000.80.2191.01,593,34427 De março de 200621: 10x 86
Impprov.dll2000.80.2191.0102,40027 De março de 200621: 10x 86
Msgprox.dll2000.80.2191.094,20827 De março de 200621: 10x 86
Msrpjt40.dll4.10.9424.0188,47324 De janeiro de 200608: 13x 86
Mssdi98.dll8.11.50523.0239,10406-Jun-200522: 46x 86
Ntwdblib.dll2000.80.2191.0290,81627 De março de 200621: 10x 86
Odsole70.dll2000.80.2191.069.63227 De março de 200621: 10x 86
Osql.exe2000.80.2191.057.34427 De março de 200619: 25x 86
Pfclnt80.dll2000.80.2191.0430,08027 De março de 200621: 10x 86
Replmerg.exe2000.80.2191.0163,84027 De março de 200619: 34x 86
Replprov.dll2000.80.2191.0237,56827 De março de 200621: 10x 86
Replrec.dll2000.80.2191.0315,39227 De março de 200621: 10x 86
Replsub.dll2000.80.2191.0270,33627 De março de 200621: 10x 86
Semexec.dll2000.80.2191.0856,06427 De março de 200621: 10x 86
Sqlagent.exe2000.80.2191.0323,58427 De março de 200619: 09x 86
Sqldiag.exe2000.80.2191.0118,78427 De março de 200620: 15x 86
Sqldmo.dll2000.80.2191.04,362,24027 De março de 200621: 10x 86
Sqlfth75.dll2000.80.2191.0102,40027 De março de 200619: 23x 86
Sqlservr.exe2000.80.2191.09,162,75227 De março de 200621: 10x 86
Sqlsort.dll2000.80.2191.0589,82427 De março de 200621: 11x 86
Stardds.dll2000.80.2191.0176,12827 De março de 200621: 11x 86
Svrnetcn.dll2000.80.2191.0110,59227 De março de 200621: 11x 86
Ums.dll2000.80.2191.035.32827 De março de 200621: 11x 86
Xpstar.dll2000.80.2191.0311,29627 De março de 200621: 11x 86
Versão de arquitetura Itanium do SQL Server 2000
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Impprov.dll2000.80.2191.0244,73627 De março de 200621: 14IA-64
Msgprox.dll2000.80.2191.0188,41627 De março de 200621: 16IA-64
Mssdi98.dll8.11.50523.0758,78406-Jun-200522: 46IA-64
Odsole70.dll2000.80.2191.0150,52827 De março de 200621: 13IA-64
Osql.exe2000.80.2191.0149.50427 De março de 200621: 13IA-64
Pfclnt80.dll2000.80.2191.01,187,84027 De março de 200621: 35IA-64
Replmerg.exe2000.80.2191.0375,29627 De março de 200621: 17IA-64
Replprov.dll2000.80.2191.0538,62427 De março de 200621: 20IA-64
Replrec.dll2000.80.2191.0775,16827 De março de 200621: 19IA-64
Replsub.dll2000.80.2191.0641,02427 De março de 200621: 21IA-64
Sqlagent.exe2000.80.2191.01,061,37627 De março de 200621: 38IA-64
Sqldiag.exe2000.80.2191.0334,33627 De março de 200621: 37IA-64
Sqldmo.dll2000.80.2191.013,860,35227 De março de 200621: 42IA-64
Sqlfth75.dll2000.80.2191.0246,78427 De março de 200621: 16IA-64
Sqlservr.exe2000.80.2191.024,973,31228 De março de 200602: 22IA-64
Sqlsort.dll2000.80.2191.0617,47227 De março de 200619: 09IA-64
Svrnetcn.dll2000.80.2191.0427,52027 De março de 200621: 32IA-64
Xpstar.dll2000.80.2191.0873,47227 De março de 200621: 41IA-64

Como Contornar

Para contornar esse problema, você pode temporariamente impedir o uso do sistema xp_availablemedia procedimento armazenado estendido. Para fazer isso, use o exemplo de código seguinte.
use master
	go
	if exists (select * from master.dbo.sysobjects where name = N'xp_availablemedia' 
			and type = N'X')
	exec sp_dropextendedproc N'xp_availablemedia'
go
se você deseja adicionar novamente o sistema xp_availablemedia procedimento armazenado estendido depois de instalar o hotfix, use o exemplo de código seguinte.
use master
	go
	sp_addextendedproc N'xp_availablemedia',N'xpstar.dll'
	go
se você remove o procedimento, qualquer chamada para o procedimento sp_MSSharedFixedDisk armazenados falha e qualquer caixa de diálogo de arquivo no SQL Server 2000 Enterprise Manager não aparece. Você não recebe uma mensagem de erro no DTS Designer. No entanto, as caixas de diálogo arquivo não aparecem. Depois de remover o sistema xp_availablemedia procedimento armazenado estendido, você deve digitar manualmente o nome de arquivo ou o local da pasta que você deseja. Além disso, após você remove o sistema xp_availablemedia procedimento armazenado estendido e você clicar no botão reticências (... ) no SQL Server 2000 Enterprise Manager, você a seguinte mensagem erro em um Microsoft SQL-DMO (SQLState ODBC: 42000) caixa de diálogo:
Erro 2812: Não foi possível encontrar o procedimento armazenado 'xp_availablemedia'.
Observação O sistema xp_availablemedia procedimento armazenado estendido pode ser automaticamente adicionado novamente para o SQL Server quando qualquer uma das seguintes condições for verdadeira:
  • Restaurar o banco de dados mestre.
  • Você reconstruir o banco de dados mestre usando o Rebuildm.exe utilitário.
  • Instalar um service pack ou um hotfix.

Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Mais Informações

Normalmente, o ntdll! RtlpCoalesceFreeBlocks ou ntdll! RtlFreeHeap funções são as funções que são vítimas na parte superior da pilha de thread quando ocorre corrupção de pilha no heap padrão. No entanto, essas funções não são as funções somente esse tipo de corrupção de pilha pode afetar. Portanto, a pilha de thread de violação de acesso para qualquer vítima pode variar. Além disso, você não pode determinar a causa da corrupção de heap examinando a pilha de thread vítima sozinha, e a causa da corrupção de heap pode ser causada por outros fatores que não estão listados neste artigo.

Por exemplo, uma chamada para o sistema xp_availablemedia procedimento armazenado estendido pode ser semelhante a seguinte:
  • No SQL Server Enterprise Manager, expanda SQL Server , expanda Gerenciamento , você clica com o botão direito do mouse em backup e, em seguida, clicar Novo dispositivo de backup .
  • Na caixa de diálogo Propriedades de dispositivo de backup - novo dispositivo , você clicar no botão reticências (... ) próxima ao nome do arquivo para localizar um dispositivo.
O sistema xp_availablemedia procedimento armazenado estendido também pode ser chamado por meio de programação usando SQL DMO. Você chamar o método EnumAvailableMedia de um objeto DMO do SQL Server junto com valor de parâmetro de SQLDMOMedia_All, SQLDMOMedia_Tape ou SQLDMOMedia_SharedFixedDisk MediaType . Independentemente de como usar o procedimento, o resultado pode ser o mesmo.

Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
824684Descrição da terminologia padrão que é usada para descrever as atualizações de software

Propriedades

ID do artigo: 916950 - Última revisão: sexta-feira, 2 de novembro de 2007 - Revisão: 1.9
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Personal Edition
  • Microsoft SQL Server 2000 Standard Edition nas seguintes plataformas
    • Microsoft Windows Server 2003, Standard x64 Edition
    • Microsoft Windows Server 2003, Enterprise x64 Edition
Palavras-chave: 
kbmt kbautohotfix kbbug kbhotfixserver kbqfe KB916950 KbMtpt
Tradução automática
IMPORTANTE: 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: 916950

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com