Como restaurar os arquivos de cache do Windows Installer ausentes e resolver problemas que ocorrem durante uma atualização do SQL Server

IMPORTANTE: Este artigo foi traduzido pelo software de tradução automática da Microsoft e eventualmente pode ter sido editado pela Microsoft Community através da tecnologia Community Translation Framework (CTF) ou por um tradutor profissional. A Microsoft oferece artigos traduzidos automaticamente por software, por tradutores profissionais e editados pela comunidade para que você tenha acesso a todos os artigos de nossa Base de Conhecimento em diversos idiomas. No entanto, um artigo traduzido pode conter erros de vocabulário, sintaxe e/ou gramática. A Microsoft não é responsável por qualquer inexatidão, erro ou dano causado por qualquer tradução imprecisa do conteúdo ou por seu uso pelos nossos clientes.

Clique aqui para ver a versão em Inglês deste artigo: 969052
Sintomas
O processo descrito neste artigo fornece apenas alívio de emergência e não uma correção permanente. Os clientes que usam esse processo de emergência devem validar seu Cache do Windows Installer usando oPacote de verificador de Cache do Windows Installer, conforme indicado no artigo do KB 2667628.

Quando você tenta instalar um service pack do Microsoft SQL Server ou uma atualização cumulativa, você pode encontrar as seguintes mensagens de erro e thesemay indicam problemas de Cache do Windows Installer. Cache do Windows Installer, localizado na pastac:\Windows\Installer. , armazena importantes arquivos para aplicativos instalados usando a tecnologia Windows Installer e não devem ser excluídos. Se o cache do installer foi comprometido, você pode não imediatamente consulte problemas até que você execute uma ação como desinstalar, reparar ou atualizar o SQL Server.

Quando você instala o SQL Server, o Windows Installer armazena os arquivos críticos no Cache do Windows Installer (o padrão é c:\Windows\Installer.). Esses arquivos são necessários para desinstalar e atualizar aplicativos. Não não possível copiar arquivos ausentes entre computadores, porque eles são exclusivos.

A Microsoft recomenda que para instalações do SQL Server você primeiro usar o processo de reparação descrito nos artigos a seguir para verificar sua instalação atual:

Você deve executar o reparo da mídia de instalação original, usando a seguinte linha de comando:

Setup.exe /ACTION = REPAIR /INDICATEPROGRESS = TRUE

Reparar os recursos e componentes comuns compartilhados pela primeira vez e, em seguida, repita o comando para reparar as instâncias instaladas. Durante o processo de reparo, a caixa de diálogo desaparece. Desde que a janela de progresso não mostra um erro, o processo de reparo é continuar conforme o esperado.

Observação: As seguintes mensagens de erro podem ser encontradas como mensagens de texto no log de eventos ou os logs de instalação estão localizados em uma das seguintes pastas e elas indicam que você deve reparar sua instância afetada sendo continuar:
  • Para o SQL Server 2008 e SQL Server 2008 R2:
    C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap
  • Para SQL Server 2012:
    C:\Program Files\Microsoft SQL Server\110\Setup Bootstrap
Para o SQL 2005 (todas as ramificações)
Versão do produtoMensagem de erro quando o Installer Package (MSI) está ausenteMensagem de erro quando o instalador Cache pacote (MSP) está ausente
SQL Server 2005
1636 não é possível instalar o arquivo MSI do Windows Installer
1636 não é possível instalar o arquivo MSP do Windows Installer
Observação: Você deve revisar os arquivos de log da instalação para identificar se os arquivos de cache estão ausentes. Para obter mais informações sobre como fazer isso, vá para a seção "Resolução".

Para o SQL Server 2008 SP1
Versão do produtoMensagem de erro quando o Installer Package (MSI) está ausenteMensagem de erro quando o instalador Cache pacote (MSP) está ausente
SQL Server 2008 SP1Nenhuma mensagem de erro
TÍTULO: Falha o programa de instalação do SQL Server.
------------------------------
O programa de instalação do SQL Server encontrou o seguinte erro: O arquivo de patch não pode ser aberto. O arquivo é: c:\WINNT\Installer\1cf506f.msp. Código de erro 0x84B20001.
------------------------------
Para o SQL Server 2008 SP3 somente build (ramificações CU/GDR não são aplicáveis)
Versão do produtoMensagem de erro quando o Installer Package (MSI) está ausenteMensagem de erro quando o instalador Cache pacote (MSP) está ausente
SP3 do SQL Server 2008
O arquivo MSI em cache 'C:\Windows\Installer\2775c8.msi' está faltando. Seu arquivo original é 'sql_engine_core_inst.msi' e foi instalado para o produto 'Microsoft SQL Server 2008 banco de dados do mecanismo dos serviços de'<network path="">', versão '10.3.5500.0' Idioma 'ENU'.</network>
Está faltando o arquivo de patch em cache "C:\Windows\Installer\19b19196.msp". O arquivo original para o arquivo em cache é "sql_engine_core_inst.msp", que pode ser instalado na versão "Service Pack 3 para o SQL Server 2008 (KB2546951) (64 bits)", 10.3.5500.0
Observação: Você recebe a seguinte mensagem de erro quando você executa uma atualização:
Erro do SQL Server

Para o SQL Server 2008 R2 SP1 somente (ramificações CU/GDR não são aplicáveis)
Versão do produtoMensagem de erro quando o Installer Package (MSI) está ausenteMensagem de erro quando o instalador Cache pacote (MSP) está ausente
SQL Server 2008 R2 SP1
TÍTULO: Falha o programa de instalação do SQL Server.
------------------------------
O programa de instalação do SQL Server encontrou o seguinte erro: C:\Windows\Installer\932b909.msi.
------------------------------
Está faltando o arquivo de patch em cache "C:\Windows\Installer\105441.msp". O arquivo original para o arquivo em cache é "sql_engine_core_inst_loc.msp", que pode ser instalado do "Service Pack 1 para SQL Server 2008 R2 (KB2528583) (64 bits)", versão 10.51.2500.0.
Observação: Você recebe a seguinte mensagem de erro quando você executa uma atualização:
Erro do SQL Server

Para o SQL Server 2008 R2 SP2
Versão do produtoMensagem de erro quando o Installer Package (MSI) está ausenteMensagem de erro quando o instalador Cache pacote (MSP) está ausente
SQL Server 2008 R2 SP1
O arquivo MSI em cache 'C:\Windows\Installer\932b909.msi' está faltando. Seu arquivo original é 'sql_engine_core_inst.msi' e foi instalado para o produto 'SQL Server 2008 R2 SP1 banco de dados do mecanismo dos serviços de'<network path="">', versão '10.51.2500.0' Idioma 'ENU'.</network>
Está faltando o arquivo de patch em cache "C:\Windows\Installer\105441.msp". O arquivo original para o arquivo em cache é "sql_engine_core_inst_loc.msp", que pode ser instalado do "Service Pack 1 para SQL Server 2008 R2 (KB2528583) (64 bits)", versão 10.51.2500.0.
Observação: Você recebe a seguinte mensagem de erro quando você executa uma atualização:
Erro do SQL Server

Para o SQL Server 2012 antes de CU2
Não há nenhuma mensagem para saber se faltam arquivos MSP ou MSI. No entanto, o código de erro 1714 é registrado no log de instalação.

No arquivo Summary. txt:
Nome do componente: arquivos de suporte de instalação do SQL Server
Código de erro do componente: 1714

No arquivo Detail txt:
<Date><Time>SLP: Sco: arquivo 'd:\2d5feb4dd893c4adee47f15661ac\1033_ENU_LP\x64\setup\sqlsupport_msi\x64\SqlSupport.msi' não existe
<Date><Time>SLP: Sco: arquivo 'd:\2d5feb4dd893c4adee47f15661ac\1033_ENU_LP\x64\setup\sqlsupport_msi\x64\SqlSupport.msi' não existe
<Date><Time>SLP: Ponto de verificação: PREINSTALL_SQLSUPPORT_CPU64_ACTION
<Date><Time>SLP: Sco: tentativa de criar a chave do registro base HKEY_LOCAL_MACHINE, máquina<Server name="">
<Date><Time>SLP: Sco: tentativa de abrir a subchave do registro Software\Microsoft\Windows\CurrentVersion\Installer
<Date><Time>SLP: Sco: tentativa de obter o valor do registro InstallerLocation
<Date><Time>SLP: Windows installer versão: 5.0.7601.17514
<Date><Time>SLP: Sco: aguardando o serviço 'msiserver' aceitar a solicitação de parada.
<Date><Time>SLP: Sco: tentativa de abrir o Gerenciador de SC
<Date><Time>SLP: Sco: tentativa de abrir o identificador do serviço para o serviço msiserver
<Date><Time>SLP: Chamando a API do Win32 de QueryServiceStatus
<Date><Time>SLP: Sco: tentativa de fechar o identificador do serviço para o serviço msiserver
<Date><Time>SLP: Sco: tentativa de fechar SC Manager
<Date><Time>SLP: Pacote de destino: "d:\2d5feb4dd893c4adee47f15661ac\1033_ENU_LP\x64\setup\sqlsupport_msi\SqlSupport.msi"
<Date><Time>SLP: Erro MSI: 1714 não é possível remover a versão antiga de instalação do Microsoft SQL Server 2012 (em inglês). Entre em contato com seu grupo de suporte técnico.
<Date><Time>SLP: InstallPackage: MsiInstallProduct retornou o código de resultado 1603.
<Date><Time>SLP: Usando o código de erro MSI para detectar a opção Repetir: 1714
<Date><Time>SLP: Nenhum MSI capaz de repetir retornar código detectado.</Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Server></Time></Date></Time></Date></Time></Date></Time></Date>

Para SQL Server 2012 CU2 (e subseqüentes CU ou SP)
Versão do produtoMensagem de erro quando o Installer Package (MSI) está ausenteMensagem de erro quando o instalador Cache pacote (MSP) está ausente
SQL Server 2008 R2 SP1
O arquivo MSI em cache ' C:\Windows\Installer\<file_encoded_name>. msi ' está faltando. Seu arquivo original é ' C:\Windows\Installer\sql_<featurename>. msi '}' e foi instalado para o produto ' do Microsoft SQL Server <version>' de 'C:\originalfolder', versão '<versionnumber>', idioma '<language>'.</language> </versionnumber> </version> </featurename> </file_encoded_name>
Está faltando o arquivo de patch em cache "c:\Windows\Installer\1fdb1aec.msp". Seu arquivo original é "sql_engine_core_inst.msp", que pode ser instalado do arquivo de patch em cache uma versão "Hotfix 2316 para SQL Server 2012 (KB2679368) (64 bits)," 11.00.2100.60.The "C:\Windows\Installer\<file_encoded_name>. msp ' está faltando. Seu arquivo original é ' C:\Windows\Installer\sql_<featurename>. msp '}', que pode ser instalado do ' Hotfix <number>para o SQL Server 2012 <KB number="">', versão '<versionnumber>'.</versionnumber> </KB> </number> </featurename> </file_encoded_name>
Observação: Sob certas condições no SQL Server 2012, os de mídia RTM pode não estar registradas corretamente. Quando você desinstalar um service pack ou uma atualização cumulativa nessas circunstâncias, o programa de instalação pode solicitar mídia RTM. Para contornar este problema, forneça o caminho de mídia RTM durante o processo de remoção do patch.
Causa
Esses problemas podem ocorrer quando o arquivo de banco de dados do Windows Installer (. msi) ou o arquivo de patch do Windows Installer (. msp) estiver faltando na cache do Windows Installer. Cache do Windows Installer está localizado na seguinte pasta:
%windir%\Installer
Quando um produto é instalado usando o Windows Installer, uma versão separada do arquivo. msi original é armazenada em cache do Windows Installer. Todas as atualizações do produto, como um hotfix, uma atualização cumulativa ou uma instalação do service pack, também armazena o arquivo. msi ou. msp relevantes na cache do Windows Installer.

Qualquer atualização futura do produto, como um hotfix, uma atualização cumulativa ou uma instalação do service pack, depende das informações nos arquivos que são armazenados no cache do Windows Installer. Sem essas informações, a nova atualização não é possível realizar as transformações necessárias.
Resolução
Para resolver esses problemas, use um dos seguintes procedimentos.

Procedimento 1: Usar um script

Para concluir as etapas neste procedimento, você precisa copiar o Script FindSQLInstalls.vbs na seção "Mais informações" para uma pasta local no computador onde você está tentando atualizar a instalação do SQL Server.

Observação: O script FindSQLInstalls.vbs coleta informações para corrigir caminhos de pacote inválido. E esse script é usado contra os locais de origem para certificar-se de que todos os pacotes MSP estão no diretório de cache do Windows Installer. Todos os pacotes ausentes será adicionados novamente se a mídia de origem original estiver disponível.

Para resolver esses problemas usando um script, execute estas etapas:
  1. Localize o diretório em que você salvou o conteúdo do script.
  2. Abra um prompt de comando elevado para o diretório em que você salvou o script e execute o seguinte comando:
    Cscript FindSQLInstalls.vbs %computername%_sql_install_details.txt
  3. Abra o arquivo da etapa 2 em um editor de texto como o bloco de notas e identificar os problemas que estão causando a falha. Para fazer isso, procure o arquivo de texto para padrões de cadeia de caracteres, como a seguir:
    • não
    • !!!
  4. Com base nos resultados na etapa 3, siga as etapas que são necessárias.

    Observação: Procure mais informações sobre essas etapas na seção "Exemplos".

  5. Repita as etapas 2 a 4 até que o arquivo de texto criado na etapa 2 não contém mais texto que faz referência a caminhos inválidos ou arquivos ausentes para o componente que está sendo atualizado.

Exemplos

Os exemplos a seguir são entradas e explicações das ações descritas no arquivo de saída que é gerado quando você executar o script FindSQLInstalls.vbs.

Exemplo 1: Faltando arquivos do instalador
O seguinte é um exemplo da saída que é gerada quando não tiver um pacote. msi na pasta de cache do Windows Installer.
================================================================================PRODUCT NAME   : Microsoft SQL Server 2008 Database Engine Services================================================================================  Product Code: {9FFAE13C-6160-4DD0-A67A-DAC5994F81BD}  Version     : 10.2.4000.0  Most Current Install Date: 20110211  Target Install Location:   Registry Path:    HKEY_CLASSES_ROOT\Installer\Products\C31EAFF906160DD46AA7AD5C99F418DB\SourceList     Package    : sql_engine_core_inst.msi  Install Source: \x64\setup\sql_engine_core_inst_msi\  LastUsedSource: m;1;G:\x64\setup\sql_engine_core_inst_msi\

A linha "LastUsedSource" aponta para o local que foi usado para executar o programa de instalação.

Na linha "LastUsedSource", a entrada de m; significa mídia e indica que a fonte original é mídia de CD/DVD.

No exemplo a seguir, a origem é um CD ou um DVD na unidade G. Se a instalação ocorreu a partir de uma pasta de arquivos ou um compartilhamento de rede, a linha começa com uma entrada de n; "LastUsedSource" seguido de uma entrada de Numeric_Data_Name; e, em seguida, o caminho real:
!!!! sql_engine_core_inst.msi DOES NOT exist on the path in the path G:\x64\setup\sql_engine_core_inst_msi\ !!!! Action needed, re-establish the path to G:\x64\setup\sql_engine_core_inst_msi\ 

A "ação necessária" linha mostra o caminho completo que deve existir para atualizar os arquivos ausentes para a mídia de instalação original:
Installer Cache File: C:\WINDOWS\Installer\19b4d2.msi 

A linha "Arquivo de Cache do Installer" confirma o nome do arquivo de cache do installer:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! C:\WINDOWS\Installer\19b4d2.msi DOES NOT exist in the Installer cache. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

A seção a seguir da saída aconselha sobre as ações necessárias para resolver os arquivos ausentes:
 Action needed, recreate or re-establish path to the directory:     G:\x64\setup\sql_engine_core_inst_msi\then rerun this script to update installer cache and results     The path on the line above must exist at the root location to resolve     this problem with your msi/msp file not being found or corrupted,     In some cases you may need to manually copy the missing file or manually     replace the problem file overwriting it is exist:       Copy "G:\x64\setup\sql_engine_core_inst_msi\sql_engine_core_inst.msi" C:\WINDOWS\Installer\19b4d2.msi      Replace the existing file if prompted to do so.
Exemplo 2: Patches que faltam
Patches ausentes podem resultar em entradas que pareçam com os do exemplo 1. Na maioria das vezes, você irá notar entradas na linha "Patch LastUsedSource" que fazem referência a um patch e esta linha semelhante à seguinte:
Patch LastUsedSource:   n;1;c:\0ca91e857a4f12dd390f0821a3\HotFixSQL\Files\

Essa saída indica o seguinte sobre a instalação do patch:
  • Instalação do patch original clicando duas vezes no arquivo executável do patch.
  • O installer para o patch usado uma pasta temp, c:\0ca91e857a4f12dd390f0821a3, durante a instalação do patch.
  • Para recriar o caminho, você deve executar o mesmo executável e adicionar o seguinte parâmetro:
    /x:c:\0ca91e857a4f12dd390f0821a3
    Observação: Este comando força o executável para extrair os arquivos para o local anterior ausente, e isso cria novamente a estrutura que é necessária para atualizar o cache do Windows installer com os arquivos ausentes. O local real irá variar, e pode ter um único patch como um service pack sejam extraídos para vários locais. Cada produto instalado inclui uma seção que contém as seguintes informações para "Patches instalados":
    Display name:KB Article URL:  http://support.microsoft.com/?kbid=<value>Patch LastUsedSource: 

    A linha "URL do artigo KB" pode ajudá-lo a fazer o download de qualquer mídia de patch, caso isso seja necessário.

Procedimento 2: Restaurar os arquivos manualmente

Para restaurar manualmente os arquivos que estiverem faltando no cache do Windows Installer, execute estas etapas:
  1. Colete os detalhes completos sobre o arquivo que está faltando na mensagem de erro, o arquivo de log de instalação ou as entradas de registro são mantidas pelo Windows Installer. Por exemplo, na mensagem de erro 1 na seção "Sintomas", todas as informações necessárias para resolver o problema estão presentes na mensagem de erro:
    • PatchName: "Hotfix 1702 para SQL Server 2008 R2 (KB981355) (64 bits)"
    • Arquivo MSP original que é usado pelo Patch: sql_engine_core_inst.msp
    • Arquivo MSP em cache: c:\Windows\Installer\1fdb1aec.msp
  2. Se você não tiver todos os detalhes, consulte o "obter mais informações para a seção 2" procedimentos para obter as etapas coletar esses detalhes.
  3. Visite o http://support.microsoft.come procure o artigo do KB que está associado com este patch. Neste exemplo, você deve procurar por KB981355.
  4. Baixe este pacote de patch em seu computador. Certifique-se de que você baixe o pacote do patch que corresponde à plataforma necessária. Neste exemplo, o pacote é SQLServer2008R2-KB981355-x64.exe.
  5. Extraia o conteúdo do pacote do patch, usando a seguinte sintaxe:
    C:\Temp>SQLServer2008R2-KB981355-x64.exe /x C:\Temp\SQLServer2008R2-KB981355-x64\
  6. Localize o arquivo de sql_engine_core_inst.msp de arquivo msp original. O arquivo deve estar na seguinte pasta:
    C:\Temp\SQLServer2008R2-KB981355-x64\x64\setup\sql_engine_core_inst_msi\
  7. Copie esse arquivo msp original cache do Windows Installer a seguir:
    %windir%\installer\
  8. Renomeie o arquivo msp original, sql_engine_core_inst.msp, para o seguinte nome:
    1fdb1aec.msp de arquivo msp em cache

Você pode iniciar o programa de instalação para a atualização que causou o erro e continuar o processo de atualização. Você pode encontrar esta mensagem para um arquivo de cache do Windows Installer ausente para outro componente ou outra atualização do mesmo produto.

Para obter uma lista de todos os ausentes do Windows Installer cache arquivos que estão relacionados a componentes de produto do SQL Server, você pode baixar a ferramenta BPA do SQL Server 2008 R2 que é mencionada na seção "Mais informações".

Se a mensagem de erro fizer referência a um arquivo de banco de dados ausente do Windows Installer (. msi), você não precisa executar as etapas 2 a 4. Em vez disso, você pode ir diretamente para a etapa 5. Você terá que localizar o arquivo. msi a partir da mídia original que você usou para instalar o produto. Se essa mensagem de erro foi gerada por sql_engine_core_inst.msi, você deve localizar esse arquivo da mídia de instalação sob a seguinte estrutura de pastas:
\x64\setup\sql_engine_core_inst_msi\
As outras etapas são as mesmas.

Para obter mais informações para o procedimento 2

Como localizar o pacote de patch e os detalhes do produto para um arquivo. msp está faltando
Versões diferentes do produto geram mensagens de erro diferentes para esse problema. As mensagens de erro mencionadas na seção "Sintomas" aparecem para programas de instalação para atualizações a partir do Microsoft SQL Server 2008 SP1. Você recebe mensagens de erro podem não especificar claramente qual arquivo de patch estiver faltando na cache do Windows Installer e os detalhes de atualização específica para outras atualizações. Essas mensagens de erro, os arquivos de log do programa de instalação irá conter informações sobre o arquivo de cache do Windows Installer está faltando. Um log de instalação de exemplo semelhante à seguinte:
MSI (s) (FC:F8) [13:48:58:649]: Opening existing patch 'C:\WINDOWS\Installer\145258.msp'.MSI (s) (FC:F8) [13:48:58:649]: Couldn't find local patch 'C:\WINDOWS\Installer\145258.msp'. Looking for it at its source.MSI (s) (FC:F8) [13:48:58:649]: Resolving Patch source.MSI (s) (FC:F8) [13:48:58:649]: Note: 1: 2203 2: D:\cda162709d239766830bae5ce12b\HotFixSQL\Files\sqlrun_sql.msp 3: -2147287037 MSI (s) (FC:F8) [13:48:58:649]: SOURCEMGMT: Source is invalid due to missing/inaccessible package.MSI (s) (FC:F8) [13:49:29:961]: Product: Microsoft SQL Server 2005 -- Installation failed.MSI (s) (FC:F8) [13:49:29:992]: MainEngineThread is returning 1635This patch package could not be opened.  Verify that the patch package exists and that you can access it, or contact the application vendor to verify that this is a valid Windows Installer patch package.D:\SQL2K5\Servers\Setup\SqlRun_SQL.msi

Se você examinar o log de instalação cuidadosamente, ele já oferece as informações sobre o arquivo MSP Original que foi usada pelo seguinte patch:
sqlrun_sql.msp


Para obter mais detalhes sobre o arquivo. msp está faltando na cache do Windows Installer, execute estas etapas:
  1. Procure o arquivo. msp está faltando na seguinte subchave do registro Patches do Windows Installer:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Patches\
  2. Localize o GUID do Patch.
  3. Procurar o GUID do Patch na seguinte subchave de registro de produtos do Windows Installer:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\
Para o log de instalação de exemplo, as informações sobre o arquivo. msp está faltando e seus detalhes de patch correspondente estão presentes nas entradas de registro a seguir:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Patches\A3B085EA74A9A7640A496636F7EF9A44

Valor: 0
Nome: LocalPackage
Dados: C:\WINDOWS\Installer\145258.msp

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\1EB3A031CC585314E87AA527E46EECC2\Patches\A3B085EA74A9A7640A496636F7EF9A44
Valor: 6
Nome: DisplayName
Dados: GDR 2050 para serviços de banco de dados do SQL Server 2005 ENU (KB932555)

Agora você tem todos os pontos de informações para iniciar as etapas para resolver os arquivos ausentes no cache do Windows Installer.

Observação: Se você usar o Microsoft SQL Server 2008 Service Pack 3 (SP3) ou posterior, você também pode receber uma mensagem de erro semelhante para os arquivos. msi ausente. Usando essa mensagem de erro, você pode rapidamente determinar qual arquivo está faltando, que service pack para download, e onde você pode encontrar o download.

Para obter mais informações sobre como obter o service pack, clique no número abaixo para ler o artigo na Base de Conhecimento da Microsoft:
2546951 Lista de bugs corrigidos no SQL Server 2008 Service Pack 3

Mais Informações
Para obter mais informações sobre arquivos de banco de dados (. msi) do Windows Installer, visite o seguinte site da Microsoft Developer Network (MSDN):Para obter mais informações sobre arquivos de (arquivo. msp) do patch do Windows Installer, visite o seguinte site da MSDN:Para obter mais informações sobre os detalhes internos do cache do Windows Installer, consulte o seguinte blog do MSDN:Para obter mais informações sobre o processo de aplicação de patches, consulte o seguinte blog do MSDN:Para obter mais informações sobre como garantir que você armazena em cache o arquivo de correção para a plataforma correta, consulte o seguinte blog do MSDN:Para obter mais informações sobre por que qualquer produto que usa o Windows Installer pode encontrar esse problema, consulte o seguinte blog do MSDN:Para obter mais informações sobre os detalhes sobre conjuntos diferentes de mensagens de erro que aparecem nos arquivos de log de instalação, consulte o seguinte blog do MSDN:

Para obter mais informações sobre os produtos e ferramentas de seleção automaticamente para esta condição na sua instância do SQL Server e sobre as versões do produto SQL Server, consulte a tabela a seguir:
Software de regraTítulo de regraDescrição da regraVersões do produto em relação à qual a regra será avaliada
SQL Server 2008 R2 Best Practice Analyzer (SQL Server 2008 R2 BPA)Configuração - cache Installer está ausente para a instalação do SQLO SQL Server 2008 R2 Best Practice Analyzer (SQL Server 2008 R2 BPA) fornece uma regra para detectar o arquivo de cache do instalador ausente para os componentes do SQL Server. O BPA do SQL Server 2008 R2 oferece suporte ao SQL Server 2008 e SQL Server 2008 R2. Se você executar a ferramenta BPA e encontrar um erro com o título da instalação - cache Installer está ausente para a instalação do SQL e, em seguida, os arquivos de cache estão faltando da pasta de cache.SQL Server 2008
SQL Server 2008 R2
Analisador de práticas recomendadas (SQL Server 2012 BPA) do SQL Server 2012Configuração - cache Installer está ausente para a instalação do SQLO SQL Server 2012 Best Practice Analyzer (SQL Server 2012 BPA) fornece uma regra para detectar o arquivo de cache do instalador ausente para os componentes do SQL Server. Se você executar a ferramenta BPA e encontrar um erro com o título da instalação - cache Installer está ausente para a instalação do SQL e, em seguida, os arquivos de cache estão faltando da pasta de cache.SQL Server 2012



Script FindSQLInstalls.vbs

' Copyright © Microsoft Corporation.  All Rights Reserved.' This code released under the terms of the ' Microsoft Public License (MS-PL, http://opensource.org/licenses/ms-pl.html.)  On Error Resume Next Dim arrSubKeys, arrSubKeys2Dim objFSO, objShell, objFile, objReg, objConn, objExecDim strComputer, strKeyPath, strNewSourceDim strWorkstationName, strDBPath, strSubKey, strSubKey2(), strKeyPath02,  strRetValue00Dim strRetValue01, strRetValue02, strRetValNew02, strRetValNew03, strRetValNew04, strRetValNew05, strRetValNew06, strRetValNew07, strRetValNew08, strRetValNew09, strRetValue10, strRetValNew10, strRetValNew11, strRetValNew12, strRetValNew13, strRetValNew14, strRetValNew14a, strRetValNew14b, strRetValNew15, strRetValNew15a, strRetValNew15b, strRetValNew16, strRetValNew17, strRetValNew18 Const HKCR = &H80000000 'HKEY_CLASSES_ROOTConst HKLM = &H80000002 'HKEY_LOCAL_MACHINEConst ForReading = 1, ForWriting = 2, ForAppEnding = 8 ' Checking for Elevated permissionsDim oShell, oExecszStdOutszStdOut = ""Set oShell = CreateObject("WScript.Shell")Set oExec = oShell.Exec("whoami /groups") Do While (oExec.Status = cnWshRunning)    WScript.Sleep 100       if not oExec.StdOut.AtEndOfStream Then                szStdOut = szStdOut & oExec.StdOut.ReadAll       end IfLoop select case oExec.ExitCode   case 0       if not oExec.StdOut.AtEndOfStream Then           szStdOut = szStdOut & oExec.StdOut.ReadAll       End If       If instr(szStdOut,"Mandatory Label\High Mandatory Level") Then                wscript.echo "Elevated, executing script and gathering requested data"       Else           if instr(szStdOut,"Mandatory Label\Medium Mandatory Level")  Then          Wscript.echo "Not Elevated must run from Administrative commmand line."       Else          Wscript.echo "Gathering requested data..."           end If      End If   case Else       if not oExec.StdErr.AtEndOfStream Then          wscript.echo oExec.StdErr.ReadAll       end If       end select '' Leaving strNewSource will result in no search path updating.' Currently DO NOT EDIT these.strNewSource = ""strNewRTMSource = "" ' Define string valuesstrComputer = "."strSQLName = "SQL"strDotNetName = ".NET"strVStudioName = "Visual Studio"strXML = "XML"strOWC = "Microsoft Office 2003 Web Components"strKeyPath = "Installer\Products"strKeyPath2 = "SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products"strNValue00 = "ProductName"strNValue01 = "PackageName"strNValue02 = "LastUsedSource"strNValue03 = "InstallSource"strNValue04 = "LocalPackage"strNValue05 = "DisplayVersion"strNValue06 = "InstallDate"strNValue07 = "UninstallString"strNValue08 = "PackageCode"strNValue09 = "MediaPackage"strNValue10 = "InstallSource"strNValue11 = "AllPatches"strNValue12 = "NoRepair"strNValue13 = "MoreInfoURL"strNValue14 = "PackageName"strNValue15 = "LastUsedSource"strNValue16 = "Uninstallable"strNValue17 = "DisplayName"strNValue18 = "Installed" If WScript.arguments.count <> 1 Then   WScript.echo "Usage: cscript " & WScript.scriptname & " outputfilename.txt"   WScript.quitEnd If '--Setup the output fileSet fso = CreateObject("Scripting.FileSystemObject")Set txtFile = fso.OpenTextFile(WScript.arguments(0), ForWriting, True)If err.number <> 0 Then    WScript.echo "Error 0x" & myHex(err.number,8) & ": " & err.source & " - " & err.description    WScript.quitEnd If txtFile.writeline "Products installed on the local system"txtFile.writeline " "txtFile.writeline " "  Set objFSO = CreateObject("Scripting.FileSystemObject")Set objShell = WScript.CreateObject("WScript.Shell") '--Set up the registry provider.Set objReg = GetObject("winmgmts:\\" & strComputer & _"\root\default:StdRegProv") Set wiInstaller = CreateObject("WindowsInstaller.Installer") '--Enumerate the "installer\products" key on HKCRobjReg.EnumKey HKCR, strKeyPath, arrSubKeys For Each strSubKey In arrSubKeys ' Define the various registry pathsstrProduct01 = "Installer\Products\" & strSubKeystrKeyPath02 = "Installer\Products\" & strSubKey & "\SourceList"strKeyPath03 = "Installer\Products\" & strSubKey & "\SourceList\Media"strInstallSource = "SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\" & strSubKey & "\InstallProperties\"strInstallSource2 = "SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\" & strSubKey & "\patches\"strInstallSource3 = "SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Patches"strInstallSource5 = "SOFTWARE\Classes\Installer\Patches\"strInstallSource6 = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"strInstallSource7 = "SOFTWARE\Microsoft\Microsoft SQL Server\"strInstallSource8 = "SOFTWARE\Wow6432Node\Microsoft\Microsoft SQL Server\" ' Pull the intial valuesobjReg.GetStringValue HKCR, strProduct01, strNValue00, strRetValue00objReg.GetStringValue HKCR, strKeyPath02, strNValue01, strRetValue01objReg.GetStringValue HKCR, strKeyPath02, strNValue02, strRetValue02strRetValNew02 = Mid(strRetValue02, 5)objReg.GetStringValue HKCR, strKeyPath03, strNValue09, strRetValue09strRetValue10 = strNewRTMSource & strRetValue09objReg.GetStringValue HKLM, strInstallSource, strNValue03, strRetValNew03objReg.GetStringValue HKLM, strInstallSource, strNValue04, strRetValNew04objReg.GetStringValue HKLM, strInstallSource, strNValue05, strRetValNew05objReg.GetStringValue HKLM, strInstallSource, strNValue06, strRetValNew06objReg.GetStringValue HKLM, strInstallSource, strNValue07, strRetValNew07objReg.GetStringValue HKLM, strInstallSource, strNValue10, strRetValNew10objReg.GetStringValue HKLM, strInstallSource, strNValue12, strRetValNew12objReg.GetStringValue HKLM, strInstallSource, strNValue13, strRetValNew13objReg.GetStringValue HKLM, strInstallSource2, strNValue11, strRetValNew11 ' Pull the Product Code from the Uninstall StringstrProdCode = strRetValNew07  ProdCodeLen = Len(strProdCode)  ProdCodeLen = ProdCodeLen - 14strRetValNew08 = Right(strProdCode, ProdCodeLen) ' Pull out path from LastUsedSourcestrGetRealPath = strRetValue02  GetRealPath = Len(strRetValue02)strRealPath = Mid(strRetValue02, 5, GetRealPath) ' Identifie the string in the ProductNameIf instr(1, strRetValue00, strSQLName, 1) Then' Start the log output    txtFile.writeline "================================================================================"    txtFile.writeline "PRODUCT NAME   : " & strRetValue00    txtFile.writeline "================================================================================"    txtFile.writeline "  Product Code: " & strRetValNew08    txtFile.writeline "  Version     : " & strRetValNew05    txtFile.writeline "  Most Current Install Date: " & strRetValNew06    txtFile.writeline "  Target Install Location: "  & strRetValNew13    txtFile.writeline "  Registry Path: "    txtFile.writeline "   HKEY_CLASSES_ROOT\" & strKeyPath02    txtFile.writeline "     Package    : " & strRetValue01    txtFile.writeline "  Install Source: " & strRetValue10    txtFile.writeline "  LastUsedSource: " & strRetValue02'   txtFile.writeline "Does this file on this path exist? " & strRetValNew02 & "\" & strRetValue01    If fso.fileexists(strRetValNew02 & "\" & strRetValue01) Then    txtFile.writeline  " "        txtFile.writeline "    " & strRetValue01 & " exists on the LastUsedSource path, no actions needed."    Else        txtFile.writeline " "        txtFile.writeline " !!!! " & strRetValue01 & " DOES NOT exist on the path in the path " & strRealPath & " !!!!"        txtFile.writeline " "        txtFile.writeline " Action needed, re-establish the path to " & strRealPath' Placeholder for altering the LastUsedSource by adding source location and Forcing search of list'        If strNewSource <> "" Then'        txtFile.writeline "      New Install Source Path Added: " & strNewSource'        wiInstaller.AddSource strRetValNew08, "", strNewSource'        Else'        If strNewRTMSource <> "" Then'        wiInstaller.AddSource strRetValNew08, "", strNewRTMSource'        txtFile.writeline "      Forcing SourceList Resolution For: " & strRetValNew08'        wiInstaller.ForceSourceListResolution strRetValNew08, ""'        End If'        End If    End If        txtFile.writeline " "        txtFile.writeline "Installer Cache File: " & strRetValNew04    If fso.fileexists(strRetValNew04) Then        txtFile.writeline " "        txtFile.writeline "    Package exists in the Installer cache, no actions needed."        txtFile.writeline "    Any missing packages will update automatically if needed assuming that"        txtFile.writeline "    the LastUsedSource exists."        txtFile.writeline " "        txtFile.writeline "    Should you get errors about " & strRetValNew04 & " or " & strRealPath & strRetValue01 & " then you"        txtFile.writeline "    may need to manually copy the file, if file exists replace the problem file, "         txtFile.writeline "    Copy and paste the following command line into an administrative command prompt:"        txtFile.writeline " "        txtFile.writeline "     Copy " & chr(34) & strRealPath  & strRetValue01 & chr(34) & " " &strRetValNew04        txtFile.writeline " "    ElseIf fso.fileexists(strRetValNew02 & "\" & strRetValue01) Then              fso.CopyFile strRetValNew02 & "\" & strRetValue01, strRetValNew04        If fso.fileexists(strRetValNew04) Then          txtFile.writeline " "          txtFile.writeline "     Missing cache file replaced by copying " & strRealPath  & strRetValue01 & " to " & strRetValNew04          txtFile.writeline "     Previously missing package " & strRetValNew04 &  " now exists in the Installer cache."          txtFile.writeline " "        End If    Else        txtFile.writeline " "        txtFile.writeline " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"        txtFile.writeline " !!!! " & strRetValNew04 & " DOES NOT exist in the Installer cache. !!!!"        txtFile.writeline " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"        txtFile.writeline " "        txtFile.writeline "     Action needed, recreate or re-establish path to the directory:"        txtFile.writeline "       " & strRealPath & "then rerun this script to update installer cache and results"        txtFile.writeline "     The path on the line above must exist at the root location to resolve"        txtFile.writeline "     this problem with your msi/msp file not being found or corrupted,"        txtFile.writeline "     In some cases you may need to manually copy the missing file or manually"        txtFile.writeline "     replace the problem file overwriting it is exist: "         txtFile.writeline " "        txtFile.writeline "     Copy " & chr(34) & strRealPath  & strRetValue01 & chr(34) & " " &strRetValNew04        txtFile.writeline " "        txtFile.writeline "     Replace the existing file if prompted to do so."        txtFile.writeline " "    End If    txtFile.writeline " "    txtFile.writeline strRetValue00 & " Patches Installed "    txtFile.writeline "--------------------------------------------------------------------------------"     err.clear    objReg.EnumKey HKLM, strInstallSource2, arrSubKeys2    uUpperBounds = UBound(arrSubKeys2,1)     If err.number = 0  Then        For Each strSubKey2 in arrSubKeys2    '    WScript.echo "value = " & strSubKey2 strKeyPath04 = "Installer\Patches\" & strSubKey2 & "\SourceList"      objReg.GetDWORDValue HKLM, strInstallSource2 & "\" & strSubKey2 & "\", strNValue16, strRetValue16     objReg.GetStringValue HKCR, strKeyPath04, strNValue15, strRetValue15a     objReg.GetStringValue HKCR, strKeyPath04, strNValue14, strRetValue14a     objReg.GetStringValue HKCR, strKeyPath02, strNValue15, strRetValue15b     objReg.GetStringValue HKCR, strKeyPath02, strNValue14, strRetValue14b     objReg.GetStringValue HKLM, strInstallSource2 & "\" & strSubKey2 & "\", strNValue17, strRetValue17     objReg.GetStringValue HKLM, strInstallSource2 & "\" & strSubKey2 & "\", strNValue18, strRetValue18     objReg.GetStringValue HKLM, strInstallSource2 & "\" & strSubKey2 & "\", strNValue13, strRetValue13a     objReg.GetStringValue HKLM, strInstallSource3 & "\" & strSubKey2 & "\", strNValue04, strRetValue04a ' Pull the URL from the MoreInfoURL StringstrMoreInfoURL = strRetValue13a  MoreInfoURLLen = Len(strMoreInfoURL)strRetValue13b = Right(strMoreInfoURL, 42) ' Pull the URL from the LastUsedPath StringstrLastUsedPath = strRetValue15a  LastUsedPathLen = Len(strLastUsedPath)  'LastUsedPathLen = LastUsedPathLen - 15strRetValue15c = Mid(strLastUsedPath, 5)       txtFile.writeline " Display Name:    " & strRetValue17       txtFile.writeline " KB Article URL:  " & strRetValue13b      txtFile.writeline " Install Date:    " & strRetValue18               txtFile.writeline "   Uninstallable:   " & strRetValue16       txtfile.writeline " Patch Details: "      txtFile.writeline "   HKEY_CLASSES_ROOT\Installer\Patches\" & strSubKey2              txtFile.writeline "   PackageName:   " & strRetValue14a' Determine if someone has modified the Uninstallable state from 0 to 1 allowing possible unexpected uninstalls              txtFile.writeline "    Patch LastUsedSource: " & strRetValue15a               txtFile.writeline "   Installer Cache File Path:     " & strRetValue04a         txtFile.writeline "     Per " & strInstallSource3 & "\" & strSubKey2 & "\" & strNValue04              mspFileName = (strRetValue15c  & strRetValue14a)      If strRetValue14a <> "" Then      If fso.fileexists(strRetValue04a) Then        txtFile.writeline " "        txtFile.writeline "    Package exists in the Installer cache, no actions needed."        txtFile.writeline "    Package will update automatically if needed assuming that"        txtFile.writeline "    the LastUsedSource exists."        txtFile.writeline " "        txtFile.writeline "    Should you get errors about " & strRetValue04a & " or " & strRetValue15c  & strRetValue14a & " then you"        txtFile.writeline "    may need to manually copy missing files, if file exists replace the problem file, "         txtFile.writeline "    Copy and paste the following command line into an administrative command prompt."        txtFile.writeline " "        txtFile.writeline "     Copy " & chr(34) & strRetValue15c  & strRetValue14a & chr(34) & " " & strRetValue04a        txtFile.writeline " "      ElseIf fso.fileexists(mspFileName) Then              fso.CopyFile mspFileName, strRetValue04a          If fso.fileexists(strRetValue04a) Then          txtFile.writeline " "          txtFile.writeline " Missing cache file replaced by copying " & strRetValue15c  & strRetValue14a & " to " & strRetValue04a          txtFile.writeline " Previously missing package " & strRetValNew04 &  " now exists in the Installer cache."          txtFile.writeline " "          End If'        End If      Else        txtFile.writeline " "        txtFile.writeline "!!!! " & strRetValue04a & " package DOES NOT exist in the Installer cache. !!!!"        txtFile.writeline " "        txtFile.writeline "     Action needed, recreate or re-establish path to the directory:"        txtFile.writeline "       " & strRetValue15c & " then rerun this script to update installer cache and results"        txtFile.writeline "     The path on the line above must exist at the root location to resolve"        txtFile.writeline "     this problem with your msi/msp file not being found or corrupted,"        txtFile.writeline "     In some cases you may need to manually copy missing files or manually"        txtFile.writeline "     replace the problem file, "         txtFile.writeline " "        txtFile.writeline "     Copy " & chr(34) & strRetValue15c  & strRetValue14a & chr(34) & " " & strRetValue04a        txtFile.writeline " "        txtFile.writeline "     Replace the existing file if prompted to do so."        txtFile.writeline " "        txtFile.writeline "     Use the following URL to assist with downloading the patch:"        txtFile.writeline "      " & strRetValue13b        txtFile.writeline " "        txtFile.writeline " "      End If       Else        txtFile.writeline " "     End If        next     Else        txtfile.writeline " "        txtfile.Writeline "  No Patches Found"        txtfile.writeline " "    End If     End If  NexttxtFile.CloseSet txtFile = NothingSet fso = Nothing

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 969052 - Última Revisão: 03/09/2016 00:50:00 - Revisão: 15.0

Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 Enterprise Evaluation, Microsoft SQL Server 2008 Express, Microsoft SQL Server 2008 Express with Advanced Services, Microsoft SQL Server 2008 Standard, Microsoft SQL Server 2008 Standard Edition for Small Business, Microsoft SQL Server 2008 Web, Microsoft SQL Server 2008 Workgroup, Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Express, Microsoft SQL Server 2008 R2 Express with Advanced Services, Microsoft SQL Server 2008 R2 Standard, Microsoft SQL Server 2008 R2 Standard Edition for Small Business, Microsoft SQL Server 2008 R2 Web, Microsoft SQL Server 2008 R2 Workgroup, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2005 Enterprise Edition, Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems, Microsoft SQL Server 2005 Enterprise X64 Edition, Microsoft SQL Server 2005 Evaluation Edition, Microsoft SQL Server 2005 Express Edition, Microsoft SQL Server 2005 Express Edition with Advanced Services, Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Standard X64 Edition, Microsoft SQL Server 2005 Workgroup Edition, Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems, Microsoft SQL Server 2012 Developer, Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2012 Express, Microsoft SQL Server 2012 Standard, Microsoft SQL Server 2012 Web

  • kbtshoot kbexpertiseinter kbprb kbsurveynew kbmt KB969052 KbMtpt
Comentários