Udostępnij za pośrednictwem


Migrowanie bazy danych programu WSUS z WID do bazy danych SQL

Wykonaj poniższe kroki, aby przeprowadzić migrację bazy danych programu WSUS (SUSDB) z wystąpienia wewnętrznej bazy danych systemu Windows do lokalnego lub zdalnego wystąpienia programu SQL Server.

Wymagania wstępne

  • Instancja SQL Może to być domyślne MSSQLServer lub niestandardowe wystąpienie.
  • SQL Server Management Studio
  • WSUS z zainstalowaną rolą WID
  • IIS (jest to zwykle uwzględniane podczas instalowania WSUS w Menedżerze serwera). Nie jest jeszcze zainstalowany, ale musi być zainstalowany.

Migrowanie bazy danych programu WSUS

Zatrzymaj usługi IIS i WSUS na serwerze WSUS

W programie PowerShell (podwyższony poziom uprawnień) uruchom polecenie:

    Stop-Service IISADMIN
    Stop-Service WsusService

Odłączanie bazy danych SUSDB od wewnętrznej bazy danych systemu Windows

Korzystanie z programu SQL Management Studio

  1. Kliknij prawym przyciskiem myszy pozycję SUSDB -> —> kliknij polecenie Odłącz: zrzut ekranu programu SQL Server Management Studio przedstawiający wybraną opcję Odłącz zadania > SUSDB>.
  2. Zaznacz pole wyboru Upuść istniejące połączenia i kliknij przycisk OK (opcjonalnie, jeśli istnieją aktywne połączenia). Zrzut ekranu przedstawiający okno dialogowe Odłącz bazę danych z wybraną opcją Upuść istniejące połączenia i wyróżnioną opcją OK.

Korzystanie z wiersza polecenia

Ważne

Te kroki pokazują, jak odłączyć bazę danych WSUS (SUSDB) od instancji bazy danych wewnętrznego systemu Windows przy użyciu narzędzia sqlcmd. Aby uzyskać więcej informacji na temat narzędzia sqlcmd, zobacz sqlcmdUtility (Narzędzie sqlcmd).

  1. Otwórz wiersz polecenia z podwyższonymi uprawnieniami
  2. Uruchom następujące polecenie SQL, aby odłączyć bazę danych programu WSUS (SUSDB) od instancji wewnętrznej bazy danych systemu Windows za pomocą narzędzia sqlcmd
        sqlcmd -S \\.\pipe\Microsoft##WID\tsql\query
        use master
        GO
        alter database SUSDB set single_user with rollback immediate
        GO
        sp_detach_db SUSDB
        GO

Kopiowanie plików SUSDB do programu SQL Server

  1. Skopiuj SUSDB.mdf i SUSDB_log.ldf z folderu danych WID (%SystemDrive%\Windows\WID\Data) do folderu danych wystąpienia SQL.

Wskazówka

Jeśli na przykład folder wystąpienia SQL to C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL, a folder WID Data to C:\Windows\WID\Data, skopiuj pliki SUSDB z C:\Windows\WID\Data do C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Data

Dołączanie bazy danych SUSDB do wystąpienia SQL

  1. W programie SQL Server Management Studio w węźle Instancja kliknij prawym przyciskiem myszy Bazy danych, a następnie kliknij Dołącz. Zrzut ekranu programu SQL Server Management Studio przedstawiający wybraną opcję Dołączanie baz danych > .
  2. W polu Dołączanie baz danych w obszarze Bazy danych do dołączenia kliknij przycisk Dodaj i znajdź plik SUSDB.mdf (skopiowany z folderu WID), a następnie kliknij przycisk OK. Zrzut ekranu przedstawiający okno dialogowe Dołączanie baz danych z wyróżnioną opcją Dodaj. Zrzut ekranu przedstawiający okno dialogowe Lokalizowanie plików bazy danych z wyróżnionym plikiem S U S D B M D F.

Wskazówka

Można to również zrobić przy użyciu języka Transact-Sql. Zobacz dokumentację SQL odnośnie dołączania bazy danych aby uzyskać instrukcje.

Przykład (przy użyciu ścieżek z poprzedniego przykładu):

   USE master;
   GO
   CREATE DATABASE SUSDB
   ON
       (FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Data\SUSDB.mdf'),
       (FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Log\SUSDB_Log.ldf')
       FOR ATTACH;
   GO

Weryfikowanie logowań i uprawnień w SQL Server i bazie danych

Uprawnienia logowania programu SQL Server

Po dołączeniu bazy danych SUSDB sprawdź, czy usługa NT AUTHORITY\NETWORK ma uprawnienia logowania do wystąpienia programu SQL Server, wykonując następujące czynności:

  1. Przejdź do programu SQL Server Management Studio
  2. Otwieranie wystąpienia
  3. Kliknij pozycję Zabezpieczenia
  4. Kliknij pozycję Logowania

Powinno zostać wyświetlone konto NT AUTHORITY\NETWORK SERVICE . Jeśli tak nie jest, musisz go dodać, dodając nową nazwę logowania.

Ważne

Jeśli wystąpienie SQL znajduje się na innej maszynie niż WSUS, konto komputera serwera WSUS powinno być wymienione w formacie [FQDN]\[WSUSComputerName]$. Jeśli tak nie jest, poniższe kroki można użyć do dodania, zastępując NT AUTHORITY\NETWORK SERVICE kontem komputera serwera WSUS ([FQDN]\[WSUSComputerName]$) Byłoby to uzupełnienie przyznania praw do NT AUTHORITY\NETWORK SERVICE

Dodawanie NT AUTHORITY\NETWORK SERVICE oraz nadawanie mu uprawnień
  1. Kliknij prawym przyciskiem myszy Loginy i wybierz Nowy login…>
  2. Na stronie Ogólne wypełnij nazwę logowania (NT AUTHORITY\NETWORK SERVICE) i ustaw domyślną bazę danych na SUSDB. Zrzut ekranu przedstawiający stronę Ogólne okna dialogowego Logowanie z wypełnionymi polami Nazwy logowania i Bazy danych Defualt.
  3. Na stronie Role serwera upewnij się, że wybrano publiczny i sysadmin. Zrzut ekranu przedstawiający stronę Ról serwera w oknie dialogowym Logowanie z wybranymi opcjami public i sysadmin.
  4. Na stronie Mapowanie użytkowników :
    • W obszarze Użytkownicy przypisani do tego logowania: wybierz pozycję SUSDB
    • W obszarze Członkostwo w roli bazy danych dla: SUSDB upewnij się, że zostały sprawdzone następujące elementy:
      • publiczny
      • webServiceZrzut ekranu przedstawiający stronę Mapowania użytkownika w oknie dialogowym Logowanie z wybranymi opcjami 'public' i 'webService'.
  5. Kliknij przycisk OK.

Teraz powinna być widoczna NT AUTHORITY\NETWORK SERVICE w obszarze Loginy. Zrzut ekranu eksploratora obiektów przedstawiający usługę sieciową N T AUTHORITY w obszarze Logowania.

Uprawnienia bazy danych

  1. Kliknij prawym przyciskiem myszy bazę danych SUSDB
  2. Wybierz właściwości
  3. Kliknij pozycję Uprawnienia

Powinno zostać wyświetlone konto NT AUTHORITY\NETWORK SERVICE .

  1. Jeśli tak nie jest, dodaj konto.

  2. W polu tekstowym Nazwa logowania wprowadź maszynę WSUS w następującym formacie:

    [nazwa FQDN]\[WSUSComputerName]$

  3. Sprawdź, czy domyślna baza danych jest ustawiona na SUSDB.

    Wskazówka

    W poniższym przykładzie pełna nazwa FQDN to Contosto.com, a nazwa maszyny WSUS to WsusMachine.

    Zrzut ekranu przedstawiający okno dialogowe logowania z informacją, że nazwa FQDN to Contosto.com** i nazwa maszyny WSUS to W s u s Machine.

  4. Na stronie Mapowanie użytkowników wybierz bazę danych SUSDB w obszarze Użytkownicy zamapowane na to logowanie

  5. Sprawdź webservice w obszarze Członkostwo w roli bazy danych dla SUSDBZrzut ekranu przedstawiający stronę Mapowanie użytkownika okna dialogowego logowania z wybranymi opcjami SUSDB i webService.

  6. Kliknij przycisk OK , aby zapisać ustawienia.

    Uwaga / Notatka

    Może być konieczne ponowne uruchomienie usługi SQL, aby zmiany zaczęły obowiązywać.

Edytuj rejestr, aby skierować WSUS do instancji SQL Server

Ważne

Dokładnie wykonaj kroki opisane w tej sekcji. Poważne problemy mogą wystąpić, jeśli nieprawidłowo zmodyfikujesz rejestr. Przed zmodyfikowaniem rejestru należy utworzyć jego kopię zapasową, aby móc przywrócić rejestr na wypadek problemów.

  1. Kliknij przycisk Start, kliknij polecenie Uruchom, wpisz polecenie regedit, a następnie kliknij przycisk OK.

  2. Znajdź następujący klucz: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\UpdateServices\Server\Setup\SqlServerName

  3. W polu tekstowym Wartość wpisz [ServerName]\[InstanceName], a następnie kliknij przycisk OK. Jeśli nazwa wystąpienia jest wystąpieniem domyślnym, wpisz [ServerName].

  4. Znajdź następujący klucz: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Update Services\Server\Setup\Installed Role Services\UpdateServices-WidDatabaseZrzut ekranu okna dialogowego Edytor rejestru z wyróżnionym kluczem UpdateServices-WidDatabase.

  5. Zmień nazwę klucza na UpdateServices-DatabaseZrzut ekranu okna dialogowego Edytor rejestru przedstawiający aktualizację nazwy klucza na UpdateServices-Database.

    Uwaga / Notatka

    Jeśli ten klucz nie zostanie zaktualizowany, narzędzie WsusUtil podejmie próbę obsługi identyfikatora WID, a nie wystąpienia SQL, do którego przeprowadzono migrację.

Uruchamianie usług IIS i WSUS na serwerze WSUS

W programie PowerShell (podwyższony poziom uprawnień) uruchom polecenie:

    Start-Service IISADMIN
    Start-Service WsusService

Uwaga / Notatka

Jeśli używasz konsoli programu WSUS, zamknij i uruchom ją ponownie.

Ostrzeżenie

Usunięcie roli WID usuwa również folder bazy danych (%SystemDrive%\Program Files\Update Services\Database), który zawiera skrypty wymagane przez WSUSUtil.exe dla zadań po instalacji. Jeśli zdecydujesz się odinstalować rolę WID, upewnij się, że wcześniej utworzono kopię zapasową folderu %SystemDrive%\Program Files\Update Services\Database .

Korzystanie z programu PowerShell:

Uninstall-WindowsFeature -Name 'Windows-Internal-Database'

Po usunięciu roli WID sprawdź, czy istnieje następujący klucz rejestru: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Update Services\Server\Setup\Installed Role Services\UpdateServices-Database