Udostępnij za pośrednictwem


Przywracanie klucza głównego bazy danych

Dotyczy:programu SQL Server

W tym temacie opisano sposób przywracania klucza głównego bazy danych w programie SQL Server przy użyciu języka Transact-SQL.

Przed rozpoczęciem

Ograniczenia i ograniczenia

  • Po przywróceniu klucza głównego program SQL Server odszyfrowuje wszystkie klucze zaszyfrowane przy użyciu aktualnie aktywnego klucza głównego, a następnie szyfruje te klucze przy użyciu przywróconego klucza głównego. Ta operacja intensywnie korzystająca z zasobów powinna być zaplanowana w okresie niskiego zapotrzebowania. Jeśli bieżący klucz główny bazy danych nie jest otwarty ani nie można go otworzyć lub jeśli którykolwiek z kluczy, które są przez niego zaszyfrowane, nie może zostać odszyfrowany, operacja przywracania zakończy się niepowodzeniem.

  • Jeśli którykolwiek z odszyfrowywania zakończy się niepowodzeniem, przywracanie zakończy się niepowodzeniem. Możesz użyć opcji FORCE, aby zignorować błędy, ale ta opcja spowoduje utratę danych, których nie można odszyfrować.

  • Jeśli klucz główny został zaszyfrowany przez klucz główny usługi, przywrócony klucz główny będzie również szyfrowany przez klucz główny usługi.

  • Jeśli w bieżącej bazie danych nie ma klucza głównego, funkcja RESTORE MASTER KEY tworzy klucz główny. Nowy klucz główny nie zostanie automatycznie zaszyfrowany przy użyciu klucza głównego usługi.

Bezpieczeństwo

Uprawnienia

Wymaga uprawnień CONTROL w bazie danych.

Używanie programu SQL Server Management Studio z programem Transact-SQL

Aby przywrócić klucz główny bazy danych

  1. Pobierz kopię klucza głównego bazy danych kopii zapasowej z fizycznego nośnika kopii zapasowej lub katalogu w lokalnym systemie plików.

  2. W Eksploratorze obiektów , nawiąż połączenie z wystąpieniem Mechanizmu bazy danych.

  3. Na pasku Standardowa kliknij pozycję Nowe zapytanie.

  4. Skopiuj i wklej poniższy przykład w oknie zapytania, a następnie kliknij pozycję Wykonaj.

    -- Restores the database master key of the AdventureWorks2022 database.  
    USE AdventureWorks2022;  
    GO  
    RESTORE MASTER KEY   
        FROM FILE = 'c:\backups\keys\AdventureWorks2022_master_key'   
        DECRYPTION BY PASSWORD = '3dH85Hhk003#GHkf02597gheij04'   
        ENCRYPTION BY PASSWORD = '259087M#MyjkFkjhywiyedfgGDFD';  
    GO  
    

    Notatka

    Ścieżka pliku do klucza i hasła klucza (jeśli istnieje) będzie inna niż wskazana powyżej. Upewnij się, że oba ustawienia są specyficzne dla serwera i konfiguracji klucza.

Zobacz też