13/01/2014

Brakujące konto MSSQLSERVER


Na swoim lokalnym komputerze pliki baz danych trzymam na innym dysku niż systemowy. Raz, że jest to dysk systemowy i chcę go w razie czego w dowolnym momencie sformatować, a dwa, że jest to dysk SSD i na nadmiar miejsca nie narzekam. Na super wydajności mi natomiast nie zależy. Utworzyłem więc katalog db na innym dysku, bazy przestawiłem w tryb offline, skopiowałem pliki mdf oraz ldf i uaktualniłem ścieżki przy pomocy komendy ALTER DATABASE. Na koniec chciałem przełączyć bazy w tryb online, ale MSSQL krzyknął, że nie ma uprawnień do plików mdf/ldf.

Spojrzałem więc jak skonfigurowany jest domyślny katalog używanego przez MSSQL do przechowywania plików baz danych. Okazało się, że właścicielem jest niejaki MSSQLSERVER. Swój katalog db chciałem więc skonfigurować w ten sam sposób. Głupia sprawa ale wyglądało, że takie konto nie istnieje w systemie! Spojrzałem jeszcze raz na domyślny katalog i wszystko się zgadzało. Przejrzałem listę wszystkich kont i nie znalazłem tam nic przypominającego konto MSSQLSERVER.

Znalezienie rozwiązania zajęło mi trochę czasu i w końcu okazało się, że pełna nazwa konta to NTSERVICE\MSSQLSERVER. Aby było łatwiej jest ono niewidoczne w okienku Select Users or Groups ale jeśli wpiszemy je w pole Enter the object names to select: to zostanie znalezione.

No comments:

Post a Comment