Zdarza się, że podczas instalacji aktualizacji SQL Server pojawiają się błędy związane z brakującymi plikami MSI. Albo to wcześniej instalacja została wykonana z dysku sieciowego, który teraz już nie jest dostępny, albo nadgorliwy administrator Windows wykasował pliki z cache MSI… no cóż!
Może się więc wydarzyć, że instalacja po prostu się nie udaje. W takim przypadku jedną z ostatnich desek ratunku może być skrypt FindSQLInstalls.vbs ze strony: https://support.microsoft.com/pl-pl/kb/969052
Instalator podczas aktualizacji szuka określonych plików w pewnych lokalizacjach:
- najpierw jest to folder cache MSI
- jeśli plik nie zostanie tam znaleziony to sprawdzana jest oryginalna lokalizacja pliku (czyli tam, gdzie znajdował się instalator w momencie instalacji.
Zadaniem tego skryptu jest sprawdzenie gdzie powinny się znajdować poszczególne pliki, aby instalacja się powiodła. Jeśli pliku nie ma w cache, skrypt pokaże, gdzie znajdował się plik podczas instalacji. Poniżej przykład z wyniku uruchomienia skryptu gdy pliku brakuje:
================================================================================
PRODUCT NAME : SQL Server 2008 R2 SP2 Reporting Services
================================================================================
Product Code: {2453DBC8-ACC4-4711-BD03-0C15353AA3D8}
Version : 10.52.4000.0
Most Current Install Date: 20140910
Target Install Location:
Registry Path:
HKEY_CLASSES_ROOT\Installer\Products\8CBD35424CCA1174DB30C05153A33A8D\SourceList
Package : sql_rs.msi
Install Source: \x64\setup\
LastUsedSource: n;1;X:\Installs\SQL2008R2SE\x64\setup\
!!!! sql_rs.msi DOES NOT exist on the path in the path X:\Installs\SQL2008R2SE\x64\setup\ !!!!
Action needed, re-establish the path to X:\Installs\SQL2008R2SE\x64\setup\
Installer Cache File: C:\Windows\Installer\240acaf0.msi
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!! C:\Windows\Installer\240acaf0.msi DOES NOT exist in the Installer cache. !!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Action needed, recreate or re-establish path to the directory:
X:\Installs\SQL2008R2SE\x64\setup\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 „X:\Installs\SQL2008R2SE\x64\setup\sql_rs.msi” C:\Windows\Installer\240acaf0.msi
Replace the existing file if prompted to do so.
Plików brakowało w Cache i nie był dostępny folder X:|Installs\… więc instalacja się nie udawała. Po zmapowaniu dysku X:\ dokładnie w ten sam sposób co podczas instalacji, powoduje, że skrypt wykazuje, że instalacja ma szansę się udać!
================================================================================
PRODUCT NAME : SQL Server 2008 R2 SP2 Reporting Services
================================================================================
Product Code: {2453DBC8-ACC4-4711-BD03-0C15353AA3D8}
Version : 10.52.4000.0
Most Current Install Date: 20140910
Target Install Location:
Registry Path:
HKEY_CLASSES_ROOT\Installer\Products\8CBD35424CCA1174DB30C05153A33A8D\SourceList
Package : sql_rs.msi
Install Source: \x64\setup\
LastUsedSource: n;1;X:\Installs\SQL2008R2SE\x64\setup\
sql_rs.msi exists on the LastUsedSource path, no actions needed.
Installer Cache File: C:\Windows\Installer\240acaf0.msi
Missing cache file replaced by copying X:\Installs\SQL2008R2SE\x64\setup\sql_rs.msi to C:\Windows\Installer\240acaf0.msi
Previously missing package C:\Windows\Installer\240acaf0.msi now exists in the Installer cache.