SQL Server, SharePoint, Azure and more…
Saturday May 19th 2012

Follow Me!

MY BOOK

SQL Server MVP Deep Dives Volume Two
MVP

 

October 2011
M T W T F S S
« Sep   Nov »
 12
3456789
10111213141516
17181920212223
24252627282930
31  

[PL] EXPRESS’owe instalacje (cz.8) – SQL 2005 + SQL 2008 = RegEdit

Może się tak zdarzyć podczas instalacji wszystkich wersji SQL Server Express (with Advanced Services) na jednym systemie, a więc: SQL Server 2005> 2008>2008R2>Denali, że pomiedzy pierwszymi instalacjami (a konkretnie w trakcie instalacji SQL Server Express 2008) napotkamy ścianę prawie nie do przejścia.  Objawia się ona takim oto błędem:

Capture_SQL2005&2008_01

Błąd ten występuje na przykład w takiej konfiguracji: po zainstalowaniu SQL Server 2005 Express Edition with Advanced Services + SP4 + CU3 + Security Updates. W omawianym przypadku aplikacja jest 32 bitowa, zaś system operacyjny to Windows 7 SP1 x64.

W pierwszej chwili można by pomyśleć o odinstalowaniu narzędzi (SQL Server 2005 Express Tools), ale to nie jest: po pierwsze proste, po drugie konieczne, po trzecie zalecane. Jeśli popatrzymy na zainstalowane programy i aplikacje, to w bezpośredni sposób nie mamy możliwości odinstalowania wymienionych narzędzi:

Capture_SQL2005&2008_02

Jak widać z narzędzi dla wersji 9 (czyli naszego SQL Server 2005) mamy tylko… SQL Server Management Studio Express, które mimo wszystko może nam się przydać. Wprawdzie będziemy mogli dostać się do naszego serwera za pomocą nowszej wersji SSMS, ale nie zawsze chcemy się pozbywać starszej. Aby uczynić mały wyłom w naszej ścianie przyjrzyjmy się rejestrowi systemowemu.

Capture_SQL2005&2008_03

Ponieważ mamy do dyspozycji dwie wersje platformy systemu operacyjnego (32 i 64 bitową), jak również SQL Server (znów 32 i 64 bitową) musimy pamiętać o położeniu plików oraz oczywiście wpisów rejestru. Za  powstanie naszej “ściany” odpowiedzialny jest bezpośrednio klucz ShellSEM, który powinniśmy znaleźć pod adresem: HKLM\SOFTWARE\Microsoft\Microsoft SQL Server\90\Tools\ShellSEM

Capture_SQL2005&2008_04

… ale musimy pamiętać o różnicach platformy i oprogramowania. Ponieważ w naszym przypadku pracujemy na x64 a instalujemy x32, system korzysta z WOW (Windows-On-Windows). Musimy więc udać się do innej gałęzi naszego rejestru: Computer\KLM\SOFTWARE\Wow6432\Microsoft\Microsoft SQL Server\90\Tools\ShellSEM

Capture_SQL2005&2008_05

Na wszelakich forach znaleźc możemy opis: “DELETE THIS REGISTRY KEY” ale ja jestem daleki od tego*. Po pierwsze może nam to przynieść więcej szkody niż pożytku (na wypadek, gdyby kiedyś okazał nam się on potrzebny… na przykład do odinstalowania SQL Server 2005), a po drugie – mamy przecież miejsce na dysku i możemy go spokojnie trzymać. Lepiej więc jest  zmienić jego nazwę na: Computer\KLM\SOFTWARE\Wow6432\Microsoft\Microsoft SQL Server\90\Tools\ ShellSEM.oldreg

Capture_SQL2005&2008_06

Pozwoli nam to zarówno na instalację nowej wersji obok starej (błąd w szóstej linijce nie występuje), jak również na kontrolowanie naszego środowiska. 

* daleki od tego powinien być też każdy administrator rozpoczynajacy pracę z rejestrem. Z praktyki własnej, mogę powiedzieć, że lepiej jest nie wyrabiać w sobie nawyku i/lub upodobania do kasowania gałezi rejestru (od tak, jakoś od niechcenia i na luzie), chyba że jest się jednym z takich wyjadaczy jak Grzegorz, Tomek czy Karol (adresaci się rozpoznają).

Be Sociable, Share!

Leave a Reply

You must be logged in to post a comment.