Як відновити відсутні файли кешу інсталятора Windows і Вирішення проблем, які виникають під Вільний час оновлення SQL Server

Переклади статей Переклади статей
Номер статті: 969052 - Показ продуктів, яких стосується ця стаття.
Розгорнути все | Згорнути все

На цій сторінці

Ознаки


Процес, описаний у цій статті знаходиться забезпечити надання надзвичайної допомоги лише і не постійна виправити. Гості за допомогою цього процесу аварійного повинні перевірити їх Windows Installer кеш користування Verifier пакеті Windows Installer кеш , як зазначено в КБ статті 2667628.

При спробі установити пакет оновлення Microsoft SQL Server або накопичувальне оновлення, ви можете зіткнутися з таких повідомлень про помилку, які можуть вказувати на проблеми кеша інсталятора Windows. Windows Installer кеш, розташована в папки c:\Windows\Installer. зберігає важливі файли для додатків, встановлені за допомогою технології Windows Installer і не повинні бути видалені. Якщо інсталятор кешу було скомпрометовано, ви можете не відразу побачити проблеми, поки ви виконати дію таких як видалити, відновлення або оновлення SQL Server.

Під Вільний час інсталяції SQL Server Інсталятора Windows зберігає критичних файли зберігаються в кеші інсталятора Windows (за промовчанням є C:\Windows\Installer). Ці файли є обов'язковими для видалення та оновлення додатків. Неможливо скопіювати відсутні файли між машини, оскільки вони є унікальними.

корпорація Майкрософт рекомендує для установки SQL Server спочатку використовувати процес відновлення зазначити, в цих статтях для перевірки вашої поточної інсталяції:
Примітка. Ви знайдете такі протокол IMAP про помилку як текстові протокол IMAP в разі увійти або в журнали установки, які знаходяться в одній із таких папок і вказати, що ви повинні відновити ваші уражені екземпляр будучи виходячи далі:
  • Для SQL Server 2008 і для SQL Server 2008 R2:
    C:\Program відомості SQL Server\100\Setup початкового завантаження
  • Для SQL Server 2012:
    C:\Program відомості SQL Server\110\Setup початкового завантаження

SQL 2005 (всі філії)
Згорнути цю таблицюРозгорнути цю таблицю
Версія продуктупротокол IMAP про помилку, коли інсталятор пакета (MSI) відсутнійпротокол IMAP про помилку, коли інсталятор пакета кеша (MSP) відсутній
SQL Server 2005
1636 Неможливо встановити Windows Installer MSI-файл
1636 Неможливо встановити Windows Installer MSP-файл
Примітка. Ви повинні розглянути файли журналу настройки, щоб визначити, чи будь-які файли кешу не вистачає. Щоб отримати додаткові відомості про те, як це зробити, перейдіть до розділу "Рішення".

Для SQL Server 2008 SP1
Згорнути цю таблицюРозгорнути цю таблицю
Версія продуктупротокол IMAP про помилку, коли інсталятор пакета (MSI) відсутнійпротокол IMAP про помилку, коли інсталятор пакета кеша (MSP) відсутній
SQL Server 2008 SP1Жодних повідомлень про помилки
Назва: Помилка інсталяції SQL Server.
------------------------------
Інсталяції SQL Server сталася така помилка: не вдалося відкрити файл-латку. Файл: c:\WINNT\Installer\1cf506f.msp. код помилки 0x84B20001.
------------------------------
Для SQL Server 2008 SP3 лише для збирання (CU/НДР гілки не застосовуються)
Згорнути цю таблицюРозгорнути цю таблицю
Версія продуктупротокол IMAP про помилку, коли інсталятор пакета (MSI) відсутнійпротокол IMAP про помилку, коли інсталятор пакета кеша (MSP) відсутній
SQL Server 2008 SP3
Кешовані MSI-файл 'C:\Windows\Installer\2775c8.msi' не вистачає. вихідний файл є 'sql_engine_core_inst.msi' та її було інстальовано продукт 'Служб Microsoft SQL Server 2008 бази даних двигун від'<network path="">', версія '10.3.5500.0' language 'Меню'.</network>
Відсутній файл кешованого патч "C:\Windows\Installer\19b19196.msp". вихідний файл для цього кешованого файлу є "sql_engine_core_inst.msp", яка може бути встановлена з «Пакет оновлень 3 для SQL Server 2008 (KB2546951) (64-розрядна)», версія 10.3.5500.0
Примітка. З'являється таке протокол IMAP про помилку під Вільний час виконання оновлення:
Згорнути це зображенняРозгорнути це зображення
Помилка сервера SQL


Для SQL Server 2008 R2 SP1 тільки (CU/НДР гілки не застосовуються)
Згорнути цю таблицюРозгорнути цю таблицю
Версія продуктупротокол IMAP про помилку, коли інсталятор пакета (MSI) відсутнійпротокол IMAP про помилку, коли інсталятор пакета кеша (MSP) відсутній
SQL Server 2008 R2 SP1
Назва: Помилка інсталяції SQL Server.
------------------------------
Інсталяції SQL Server сталася така помилка: C:\Windows\Installer\932b909.msi.
------------------------------
Відсутній файл кешованого патч "C:\Windows\Installer\105441.msp". вихідний файл для цього кешованого файлу є «sql_engine_core_inst_loc.msp", яка може бути встановлена з «Пакет оновлень 1 для SQL Server 2008 R2 (KB2528583) (64-розрядна)», версія 10.51.2500.0.
Примітка. З'являється таке протокол IMAP про помилку під Вільний час виконання оновлення:
Згорнути це зображенняРозгорнути це зображення
Помилка сервера SQL


Для SQL Server 2008 R2 SP2
Згорнути цю таблицюРозгорнути цю таблицю
Версія продуктупротокол IMAP про помилку, коли інсталятор пакета (MSI) відсутнійпротокол IMAP про помилку, коли інсталятор пакета кеша (MSP) відсутній
SQL Server 2008 R2 SP1
Кешовані MSI-файл 'C:\Windows\Installer\932b909.msi' не вистачає. вихідний файл є 'sql_engine_core_inst.msi' та її було інстальовано продукт 'SQL Server 2008 R2 SP1 бази даних двигун застосунок-служба від'<network path="">', версія '10.51.2500.0' language 'Меню'.</network>
Відсутній файл кешованого патч "C:\Windows\Installer\105441.msp". вихідний файл для цього кешованого файлу є «sql_engine_core_inst_loc.msp", яка може бути встановлена з «Пакет оновлень 1 для SQL Server 2008 R2 (KB2528583) (64-розрядна)», версія 10.51.2500.0.
Примітка. З'являється таке протокол IMAP про помилку під Вільний час виконання оновлення:
Згорнути це зображенняРозгорнути це зображення
Помилка сервера SQL


Для SQL Server 2012 до CU2
Немає не протокол IMAP для відсутніх файлів MSP або MSI. Однак, код помилки 1714 записується до журналу інсталяції.

У на Summary. txt:
Компонент ім'я: SQL Server інсталяції файли підтримки
Компонент код помилки: 1714

У файлі Detail. txt:
<Date><Time>SLP: ШОС: файл 'd:\2d5feb4dd893c4adee47f15661ac\1033_ENU_LP\x64\setup\sqlsupport_msi\x64\SqlSupport.msi' не існує
<Date><Time>SLP: ШОС: файл 'd:\2d5feb4dd893c4adee47f15661ac\1033_ENU_LP\x64\setup\sqlsupport_msi\x64\SqlSupport.msi' не існує
<Date><Time>SLP: Контрольно-пропускний пункт: PREINSTALL_SQLSUPPORT_CPU64_ACTION
<Date><Time>SLP: ШОС: спроба створити основний маркер розділ реєстру HKEY_LOCAL_MACHINE, машина<Server name="">
<Date><Time>SLP: ШОС: відкрити підрозділ реєстру Software\Microsoft\Windows\CurrentVersion\Installer
<Date><Time>SLP: ШОС: намагалася отримати значення реєстру InstallerLocation
<Date><Time>SLP: Версія інсталятора Windows: 5.0.7601.17514
<Date><Time>SLP: ШОС: очікування для обслуговування 'msiserver' прийняти запит stop.
<Date><Time>SLP: ШОС: відкрити диспетчер SC
<Date><Time>SLP: ШОС: спроби відкриття служби ручка для служби msiserver
<Date><Time>SLP: Пригадали QueryServiceStatus Win32 API
<Date><Time>SLP: ШОС: спроба закрити служби ручка для служби msiserver
<Date><Time>SLP: ШОС: спробою Закрийте диспетчер SC
<Date><Time>SLP: Цільова пакет: "d:\2d5feb4dd893c4adee47f15661ac\1033_ENU_LP\x64\setup\sqlsupport_msi\SqlSupport.msi"
<Date><Time>SLP: MSI помилка: 1714 неможливо видалити стару версію Microsoft SQL Server 2012 установки (англійською мовою). Зверніться до групи технічної підтримки.
<Date><Time>SLP: InstallPackage: MsiInstallProduct повертається результат код 1603.
<Date><Time>SLP: сценарій виконання MSI помилка коду для виявлення опція "Повторити": 1714
<Date><Time>SLP: Немає "Повторити" able MSI код відповіді виявлені.</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>

Для SQL Server 2012 CU2 (і будь-які подальші СU або SP)
Згорнути цю таблицюРозгорнути цю таблицю
Версія продуктупротокол IMAP про помилку, коли інсталятор пакета (MSI) відсутнійпротокол IMAP про помилку, коли інсталятор пакета кеша (MSP) відсутній
SQL Server 2008 R2 SP1
Кешовані MSI-файл ' C:\Windows\Installer\<file_encoded_name>.msi' відсутні. Оригінальний файл ' C:\Windows\Installer\sql_<featurename>.msi'}' і її було інстальовано продукт ' Microsoft SQL Server <version>' з 'C:\originalfolder', версія '<versionnumber>', мова '<language>'.</language> </versionnumber> </version> </featurename> </file_encoded_name>
Відсутній файл кешованого патч "c:\Windows\Installer\1fdb1aec.msp". Його оригінальний файл є "sql_engine_core_inst.msp", яка може бути встановлена з «Виправлення 2316 для SQL Server 2012 (KB2679368) (64-розрядна)», версія 11.00.2100.60.The кешованих патч файл "C:\Windows\Installer\<file_encoded_name>.msp' відсутні. Його оригінальний файл ' C:\Windows\Installer\sql_<featurename>.msp'}', яка може бути встановлена з ' виправлення <number>для SQL Server 2012 <KB number="">', версія '<versionnumber>'.</versionnumber> </KB> </number> </featurename> </file_encoded_name>

причина

Ці проблеми можуть виникнути, коли інсталятор Windows файл бази даних (. MSI) або файлу латка інсталятора Windows (.msp) відсутній у кеші інсталятора Windows. інсталятор Windows кеш розташований в такій папці:
%WINDIR%\Installer
Коли продукт встановлено за допомогою Windows Installer, позбавили версії оригінальний файл. msi зберігається в кеші інсталятора Windows. Кожен оновлення продукту, наприклад, виправлення, накопичувальне оновлення або налаштування застосунок-служба pack, також зберігає відповідні .msp або файл. msi в кеші інсталятора Windows.

Будь-яких майбутніх оновлення для продукту, наприклад, виправлення, накопичувальне оновлення або налаштування застосунок-служба pack, використовує відомості у файли, які зберігаються в кеші інсталятора Windows. Без цієї інформації нове оновлення не вдалося виконати необхідні перетворення.

Розв'язанн

Щоб вирішити ці проблеми, виконайте одну з наступних процедур.

Процедура 1: Використовувати сценарій

Щоб виконати інтерактивні елементи, описані в цій процедурі, вам доведеться скопіювати в FindSQLInstalls.vbs-скрипт у розділі "Додаткові відомості" до локальної папки на комп'ютері, де потрібно оновити інсталяції SQL Server.

Примітка. FindSQLInstalls.vbs скрипт збирає інформацію для виправлення неприпустимий пакет контури. І цей сценарій використовується проти джерело місцях щоб переконатися, що всі пакунки MSP знаходяться в кеш-директорії інсталятора Windows. Відсутні будь-які пакети буде повторно додано якщо вихідного носія джерела доступні.

Щоб вирішити ці проблеми за допомогою сценарію, виконайте такі дії:
  1. Знайдіть директорії, на які ви зберегли зміст скрипта.
  2. Відкрити підвищеної командний рядок в каталог, на які ви зберегли сценарій і запустіть таку команду:
    Cscript FindSQLInstalls.vbs %computername%_sql_install_details.txt
  3. Відкрийте файл з кроку 2 в текстовому редакторі, наприклад блокнот і визначити проблеми, що призводять до провалу. Для цього, шукати текстовий файл для струнного візерунків, наприклад таких:
    • Не
    • !!!
  4. За підсумками у кроці 3, зробити кроки, які необхідні.

    Примітка. Шукайте більше інформації про такі інтерактивні елементи в розділі "Зразки".

  5. Повторіть кроки 2-4, поки текстовий файл, створений на кроці 2 вже не містить текст, який посилається на неприпустимий контури або відсутні файли для компонент, який оновлюється.

Приклади

Наведені нижче приклади є запис А бізнес-партнера і пояснення інтерактивні елементи, описані в вихідного файлу, що створюється під Вільний час запуску сценарію FindSQLInstalls.vbs.

Приклад 1: Відсутні файли інсталятора
Нижче наведено приклад виводу, що створюється, коли вам не вистачає .msi пакет у папці кешу інсталятора Windows.
================================================================================
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\

"LastUsedSource" deb ' вказує на адресу, яка використовувалася, щоб запустити установчу програму.

У рядку "LastUsedSource" м; запис А означає, медіа і вказує, що першоджерелом носіїв CD/DVD.

У наведеному нижче прикладі джерелом є компакт-диск або DVD-диск у дисковод г. Якщо установка стався з файлу папки або з мережного диска, "LastUsedSource" рядок «Кому» починається з n; запис А, слідують Numeric_Data_Name; запис А а потім фактичний шлях:
!!!! 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\ 

"Дії необхідні" рядок «Кому» показує вам повний шлях, який має існувати для того, щоб оновити відсутні файли для оригінального інсталяційного носія:
Installer Cache File: C:\WINDOWS\Installer\19b4d2.msi 

рядок «Кому» "Установки файлу кеша" підтверджує ім'я файлу кеша установки:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!! C:\WINDOWS\Installer\19b4d2.msi DOES NOT exist in the Installer cache. !!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Цей розділ виведення консультує вас про інтерактивні елементи, які необхідно вирішити відсутні файли:
 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.
Приклад 2: Відсутні патчі
Відсутні патчі може призвести до записів, які нагадують тих у прикладі 1. Більшу частину часу, ви помітите, запис А бізнес-партнера у рядку "Патч LastUsedSource", які посилаються патч, і ця рядок «Кому» приблизно такого вигляду:
Patch LastUsedSource:   n;1;c:\0ca91e857a4f12dd390f0821a3\HotFixSQL\Files\

Цей вихід показує наступне про установки виправлення:
  • Оригінальний патч був встановлений, двічі клацнувши на патч виконуваний файл.
  • Інсталятор для патч використовується файлу вказувалася тимчасова папка, c:\0ca91e857a4f12dd390f0821a3, під Вільний час установки патча.
  • Повторно створити шлях, ви повинні запустити ж виконуваний файл і додати наступний параметр:
    /x:c:\0ca91e857a4f12dd390f0821a3
    Примітка. Ця команда змушує виконуваний файл, щоб витягти файли до попереднього розташування відсутні, і це відтворює структуру, що потрібно оновити кеш інсталятора Windows з будь-яких відсутні файли. Фактичне місцезнаходження буде змінюватися, і одним плямою, наприклад, пакет оновлення, можливо, доведеться бути вилучені в декількох місцях. Кожного інстальований продукт містить розділ, що містить наступну інформацію для "Патчі встановлено":
    Display name:
    KB Article URL:  http://support.microsoft.com/?kbid=<value>
    Patch LastUsedSource: 

    "КБ статті URL" рядок «Кому» може допомогти завантаження будь-яких медіафайлів патч, якщо це необхідно.

Процедура 2: Вручну відновлення файлів

Щоб вручну відновити файли, які відсутні в кеші інсталятора Windows, виконайте такі дії:
  1. Збирати повну інформацію про відсутній файл з протокол IMAP про помилку, у файл журналу інсталяції або з реєстру, які ведуться інсталятора Windows. Наприклад, в 1 протокол IMAP про помилку в розділі "Ознаки", всю інформацію, яка необхідна для вирішення цієї проблеми присутня в повідомленні про помилку:
    • PatchName: "виправлення 1702 для SQL Server 2008 R2 (KB981355) (64-розрядна)"
    • Оригінальний MSP-файл, який використовується в патч: sql_engine_core_inst.msp
    • Кешовані MSP-файл: c:\Windows\Installer\1fdb1aec.msp
  2. Якщо не всі деталі, див на "більше інформації для для інтерактивні елементи, щоб зібрати ці деталі процедури 2" розділу.
  3. Відвідайте http://support.Microsoft.comі пошук для КБ статті, яка пов'язана з цього патча. У цьому прикладі ви повинні шукати KB981355.
  4. Завантажте цей пакет виправлень до комп ' ютера. Переконайтеся, що вам завантажити пакет виправлень, яке відповідає необхідні платформи. У цьому прикладі пакет-SQLServer2008R2-KB981355-x64.exe.
  5. Видобути вміст пакета виправлень, використовуючи наступний синтаксис:
    C:\Temp>SQLServer2008R2-KB981355-x64.exe/г C:\Temp\SQLServer2008R2-KB981355-x64\
  6. Знайдіть вихідний файл msp sql_engine_core_inst.msp файл. Файл повинен бути в такій папці:
    C:\Temp\SQLServer2008R2-KB981355-x64\x64\setup\sql_engine_core_inst_msi\
  7. Скопіювати цей оригінальної msp-файл на такий кеш інсталятора Windows:
    %WINDIR%\installer\
  8. Перейменуйте вихідний файл msp, sql_engine_core_inst.msp, з таким іменем:
    кешовані msp-файл 1fdb1aec.msp

Можна запустити програму інсталяції для оновлення, яке призвело до протокол IMAP про помилку та продовжити процес оновлення. Ви можете зіткнутися з цього протокол IMAP для відсутніх інсталятора Windows кеш-файли для іншого компонента або іншого оновлення того самого продукту.

Щоб отримати список всіх відсутніх інсталятора Windows кеш файлів, які мають відношення до компонентів продукту SQL Server, ви можете завантажити SQL Server 2008 R2 BPA інструмент, який згадується в розділі "Додаткові відомості".

Якщо протокол IMAP про помилку посилається на відсутній інсталятора Windows файл бази даних (. MSI), не потрібно виконувати кроки 2-4. Замість цього, можна перейти безпосередньо до кроку 5. Ви повинні знайти .msi від вихідного носія, який використовувався для інсталяції продукту. Якщо це протокол IMAP про помилку було згенеровано за sql_engine_core_inst.msi, то у вас знайти цей файл від установки ЗМІ під наступну структуру папок:
\x64\setup\sql_engine_core_inst_msi\
Інші кроки, те ж саме.

Додаткові відомості для процедури 2

Як знайти пакет виправлень і відомості про продукт для відсутніх MSP-файл
Різні версії продукту генерувати різні помилки протокол IMAP для цієї проблеми. Для програми інсталяції оновлень, починаючи з Microsoft SQL Server 2008 SP1 з'являються протокол IMAP про помилки, які згадуються в розділі "Ознаки". Для інших оновлень ви отримаєте протокол IMAP про помилки, які не явно зазначають який патч файл відсутній у кеш інсталятора Windows і оновленням деталі. Для цих повідомлень про помилки файли журналу настройки буде містити інформацію про відсутній файл кеша інсталятора Windows. Приклад налаштування журналу подібне до такого:
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 1635
This 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

Якщо ви уважно вивчити цей журнал установки, це вже дає вам інформацію про оригінальний MSP-файл, який використовувався наступні патч:
sqlrun_sql.MSP


Щоб знайти більш детальну інформацію про зниклих без вести MSP-файл в кеші інсталятора Windows, виконайте такі дії:
  1. Пошук відсутніх MSP-файл у підрозділі реєстру Windows Installer патчі:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Patches\
  2. Знайти патч GUID.
  3. Пошук підрозділ реєстру продукти інсталятора Windows, GUID патч:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\
Для журналу інсталяції зразка відомості про зниклих без вести MSP-файл та його відповідне патч відомості, присутні у таких записів реєстру:

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

Значення: 0
Назва: LocalPackage
Дані: C:\WINDOWS\Installer\145258.msp

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\1EB3A031CC585314E87AA527E46EECC2\Patches\A3B085EA74A9A7640A496636F7EF9A44
Значення: 6
Назва: DisplayName
Дані: НДР 2050 для SQL сервер бази даних служб 2005 меню (KB932555)

Тепер у вас є всі пункти інформацію для початку інструкції з вирішення відсутні файли, в кеші інсталятора Windows.

Примітка. Якщо ви використовуєте Microsoft SQL Server 2008 пакет оновлень 3 (SP3) або пізнішої версії, ви також можете отримувати подібні протокол IMAP про помилку для відсутніх файлів .msi. За допомогою цього протокол IMAP про помилку, можна швидко визначити, який відсутній, те, що пакет оновлень для завантаження, і де ви можете знайти завантаження.

Щоб отримати додаткові відомості про те, як отримати пакет оновлень клацніть номер статті для перегляду статті в базі знань Microsoft Knowledge Base:
2546951 Список помилок, виправлених у пакета оновлень 3 для SQL Server 2008

Додаткові відомості

Щоб отримати додаткові відомості про файли бази даних (. MSI) інсталятора Windows відвідайте веб-сайт корпорації Майкрософт розробник глобальна мережа (MSDN):
Інсталятор бази даних
Щоб отримати додаткові відомості про інсталятора Windows файли виправлення (MSP-файл) відвідайте такі веб-сайті MSDN:
Патч пакунки
Докладніше про внутрішні деталі кешу інсталятора Windows див таких блозі MSDN:
Windows Installer кеш
Щоб отримати додаткові відомості про процес, що має використовуватися побачити такі блозі MSDN:
Як виправлення працює
Щоб отримати додаткові відомості про те, як переконатися, що вам кешують файл-латку для правильної платформою побачити такі блозі MSDN:
SQL Server програма з налаштування попросить з "інстальований продукт не відповідає джерелами установки"
Щоб отримати додаткові відомості про чому будь-який продукт, який використовує інсталятор Windows можна зіткнулися з цією проблемою побачити наступні блозі MSDN:
Відновлення інсталятор кеш
Докладніше про подробиці про різних наборів повідомлень про помилки, які з'являються у файли журналу настройки перегляньте наступні MSDN блозі:
Частина - 1: SQL Server 2005 патч не встановлюється з помилкою "не вдалося встановити Windows Installer MSP файл"


Щоб отримати додаткові відомості про продукти або інструменти, які автоматично перевіряти наявність цієї умови, на ваш екземпляр SQL Server та версії продукту SQL Server побачити у таблиці:
Згорнути цю таблицюРозгорнути цю таблицю
Правило програмного забезпеченняЗаголовок правилаОпис правилаВерсії продуктів, проти яких обчислюються правило
SQL Server 2008 R2 кращі практики аналізатор (SQL Server 2008 R2 BPA)Налаштування - інсталятор кеш не вистачає для установки SQLSQL Server 2008 R2 кращі практики аналізатор (SQL Server 2008 R2 BPA) забезпечує правило для виявлення зниклих без вести інсталятор кеш-файл для компонентів SQL Server. SQL Server 2008 R2 BPA підтримує SQL Server 2008 і SQL Server 2008 R2. Якщо запустити засіб BPA і з'явилося протокол IMAP, під назвою налаштування - інсталятор кеш не вистачає для установки SQL і, то кеш-файли, відсутні в папці кешу.SQL Server 2008
SQL Server 2008 R2
SQL Server 2012 кращі практики аналізатор (SQL Server 2012 BPA)Налаштування - інсталятор кеш не вистачає для установки SQLSQL Server 2012 кращі практики аналізатор (SQL Server 2012 BPA) забезпечує правило для виявлення зниклих без вести інсталятор кеш-файл для компонентів SQL Server.Якщо запустити засіб BPA і з'явилося протокол IMAP, під назвою налаштування - інсталятор кеш не вистачає для установки SQL і, то кеш-файли, відсутні в папці кешу.SQL Server 2012



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, arrSubKeys2
Dim objFSO, objShell, objFile, objReg, objConn, objExec
Dim strComputer, strKeyPath, strNewSource
Dim strWorkstationName, strDBPath, strSubKey, strSubKey2(), strKeyPath02,  strRetValue00
Dim 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_ROOT
Const HKLM = &H80000002 'HKEY_LOCAL_MACHINE
Const ForReading = 1, ForWriting = 2, ForAppEnding = 8
 
' Checking for Elevated permissions
Dim oShell, oExec
szStdOutszStdOut = ""
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 If
Loop
 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 values
strComputer = "."
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.quit
End If
 
'--Setup the output file
Set 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.quit
End 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 HKCR
objReg.EnumKey HKCR, strKeyPath, arrSubKeys
 
For Each strSubKey In arrSubKeys
 
' Define the various registry paths
strProduct01 = "Installer\Products\" & strSubKey
strKeyPath02 = "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 values
objReg.GetStringValue HKCR, strProduct01, strNValue00, strRetValue00
objReg.GetStringValue HKCR, strKeyPath02, strNValue01, strRetValue01
objReg.GetStringValue HKCR, strKeyPath02, strNValue02, strRetValue02
strRetValNew02 = Mid(strRetValue02, 5)
objReg.GetStringValue HKCR, strKeyPath03, strNValue09, strRetValue09
strRetValue10 = strNewRTMSource & strRetValue09
objReg.GetStringValue HKLM, strInstallSource, strNValue03, strRetValNew03
objReg.GetStringValue HKLM, strInstallSource, strNValue04, strRetValNew04
objReg.GetStringValue HKLM, strInstallSource, strNValue05, strRetValNew05
objReg.GetStringValue HKLM, strInstallSource, strNValue06, strRetValNew06
objReg.GetStringValue HKLM, strInstallSource, strNValue07, strRetValNew07
objReg.GetStringValue HKLM, strInstallSource, strNValue10, strRetValNew10
objReg.GetStringValue HKLM, strInstallSource, strNValue12, strRetValNew12
objReg.GetStringValue HKLM, strInstallSource, strNValue13, strRetValNew13
objReg.GetStringValue HKLM, strInstallSource2, strNValue11, strRetValNew11
 
' Pull the Product Code from the Uninstall String
strProdCode = strRetValNew07
  ProdCodeLen = Len(strProdCode)
  ProdCodeLen = ProdCodeLen - 14
strRetValNew08 = Right(strProdCode, ProdCodeLen)
 
' Pull out path from LastUsedSource
strGetRealPath = strRetValue02
  GetRealPath = Len(strRetValue02)
strRealPath = Mid(strRetValue02, 5, GetRealPath)
 
' Identifie the string in the ProductName
If 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 String
strMoreInfoURL = strRetValue13a
  MoreInfoURLLen = Len(strMoreInfoURL)
strRetValue13b = Right(strMoreInfoURL, 42)
 
' Pull the URL from the LastUsedPath String
strLastUsedPath = strRetValue15a
  LastUsedPathLen = Len(strLastUsedPath)
  'LastUsedPathLen = LastUsedPathLen - 15
strRetValue15c = 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
 
 
Next
txtFile.Close
Set txtFile = Nothing
Set fso = Nothing

Властивості

Номер статті: 969052 - Востаннє переглянуто: 22 жовтня 2013 р. - Редакція: 5.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 Express Edition
  • Microsoft SQL 2005 Server Enterprise
  • 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 2005 Server Workgroup
  • 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 KbMtuk
Машинний переклад
ВАЖЛИВО! Ця стаття перекладена засобами машинного перекладу Microsoft. Статтю можна редагувати в середовищі Community Translation Framework (CTF). Щоб якомога швидше перекласти всі статті у своїй базі знань різними мовами, компанія Microsoft не лише звертається до професійних перекладачів, але й вдається до машинного перекладу, який потім редагується спільнотою. Такі статті можуть містити лексичні, синтаксичні та граматичні помилки. Microsoft не несе відповідальності за будь-які неточності, помилки або збитки, до яких може призвести неправильний переклад статей або їх використання. Докладніше про CTF див. на веб-сторінці http://support.microsoft.com/gp/machine-translation-corrections/uk-ua.
Клацніть тут, щоб переглянути цю статтю англійською мовою: 969052

Надіслати відгук

 

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