Przykład: Konfigurowanie bazy danych, dublowanie przy użyciu certyfikatów (Transact-SQL)
W tym przykładzie wszystkie etapy niezbędne do utworzenia dublowanie bazy danych sesja za pomocą certyfikat-uwierzytelnianie na podstawie.Przykłady w tym temacie Transact-SQL.Chyba, że aby zagwarantować, że sieć jest bezpieczny, zaleca się, aby korzystać z szyfrowanie dla połączeń dublowanie bazy danych.
Podczas kopiowania certyfikat do innego systemu, należy użyć metoda bezpiecznej kopii.Uważaj niezwykle zabezpieczyć wszystkie certyfikaty.
Przykład
Poniższy przykład demonstruje, co trzeba zrobić w jednym partner, który znajduje się na HOST_A.W tym przykładzie dwóch partnerów są wystąpienia domyślnego serwera trzech systemach komputerowych.Wystąpienia serwera dwóch uruchamiane w niezaufanych domenach systemu Windows dzięki certyfikat-wymagane jest uwierzytelnianie na podstawie.
Początkowe głównej roli jest pobierana przez HOST_A i roli lustrzany jest pobierana przez HOST_B.
Konfigurowanie dublowanie bazy danych przy użyciu certyfikatów obejmuje cztery etapy ogólne, które trzech etapów — 1, 2 i 4 — są wykazane w tym przykładzie.Te etapy są następujące:
Konfigurowanie połączeń wychodzących
W tym przykładzie przedstawiono kroki dla:
Host_A Konfigurowanie połączeń wychodzących.
Host_B Konfigurowanie połączeń wychodzących.
Informacje tego etapu konfigurowania dublowanie bazy danych, zobacz Jak Zezwalaj na bazy danych dublowania, aby używać certyfikatów dla połączeń wychodzących (Transact-SQL).
Konfigurowanie połączeń przychodzących
W tym przykładzie przedstawiono kroki dla:
Host_A Konfigurowanie połączeń przychodzących.
Host_B Konfigurowanie połączeń przychodzących.
Informacje tego etapu konfigurowania dublowanie bazy danych, zobacz Jak Zezwalaj na bazy danych dublowania, aby używać certyfikatów dla połączeń przychodzących (Transact-SQL).
Tworzenie dublowania bazy danych
Aby uzyskać informacje dotyczące tworzenia duplikat bazy danych, zobacz Jak Przygotowywanie bazy danych dublowania do dublowania (Transact-SQL).
Konfigurowanie partnerów dublowania
Konfigurowanie połączeń wychodzących
Aby skonfigurować Host_A dla połączeń wychodzących
Na master bazy danych, Utwórz klucz główny bazy danych, w razie potrzeby.
USE master; CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<1_Strong_Password!>'; GO
Sprawdź certyfikat dla tego wystąpienie serwera.
USE master; CREATE CERTIFICATE HOST_A_cert WITH SUBJECT = 'HOST_A certificate'; GO
Utwórz dublowanie punkt końcowy dla wystąpienie serwera przy użyciu certyfikat.
CREATE ENDPOINT Endpoint_Mirroring STATE = STARTED AS TCP ( LISTENER_PORT=7024 , LISTENER_IP = ALL ) FOR DATABASE_MIRRORING ( AUTHENTICATION = CERTIFICATE HOST_A_cert , ENCRYPTION = REQUIRED ALGORITHM AES , ROLE = ALL ); GO
Wykonaj kopię zapasową certyfikat HOST_A i skopiuj go do innego systemu HOST_B.
BACKUP CERTIFICATE HOST_A_cert TO FILE = 'C:\HOST_A_cert.cer'; GO
Za pomocą dowolnej metoda bezpieczna kopia, skopiuj C:\HOST_A_cert.cer HOST_B.
Aby skonfigurować Host_B dla połączeń wychodzących
Na master bazy danych, Utwórz klucz główny bazy danych, w razie potrzeby.
USE master; CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<Strong_Password_#2>'; GO
Tworzenie certyfikatu na serwerze HOST_B wystąpienie.
CREATE CERTIFICATE HOST_B_cert WITH SUBJECT = 'HOST_B certificate for database mirroring'; GO
Utwórz dublowanie końcowy dla wystąpienie serwera na HOST_B.
CREATE ENDPOINT Endpoint_Mirroring STATE = STARTED AS TCP ( LISTENER_PORT=7024 , LISTENER_IP = ALL ) FOR DATABASE_MIRRORING ( AUTHENTICATION = CERTIFICATE HOST_B_cert , ENCRYPTION = REQUIRED ALGORITHM AES , ROLE = ALL ); GO
Wykonaj kopię zapasową certyfikat HOST_B.
BACKUP CERTIFICATE HOST_B_cert TO FILE = 'C:\HOST_B_cert.cer'; GO
Za pomocą dowolnej metoda bezpieczna kopia, skopiuj C:\HOST_B_cert.cer HOST_A.
Aby uzyskać więcej informacji, zobacz Jak Zezwalaj na bazy danych dublowania, aby używać certyfikatów dla połączeń wychodzących (Transact-SQL).
[Do góry]
Konfigurowanie połączeń przychodzących
Aby skonfigurować Host_A dla połączeń przychodzących
Utworzyć identyfikator logowania HOST_A HOST_B.
USE master; CREATE LOGIN HOST_B_login WITH PASSWORD = '1Sample_Strong_Password!@#'; GO
--Utwórz użytkownika dla tego identyfikatora logowania.
CREATE USER HOST_B_user FOR LOGIN HOST_B_login; GO
— Skojarzone certyfikat użytkownika.
CREATE CERTIFICATE HOST_B_cert AUTHORIZATION HOST_B_user FROM FILE = 'C:\HOST_B_cert.cer' GO
Udziel uprawnienia POŁĄCZ logowania zdalnego punktu końcowego dublowanie.
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_B_login]; GO
Aby skonfigurować Host_B dla połączeń przychodzących
Utworzyć identyfikator logowania HOST_B HOST_A.
USE master; CREATE LOGIN HOST_A_login WITH PASSWORD = '=Sample#2_Strong_Password2'; GO
Utwórz użytkownika dla tego identyfikatora logowania.
CREATE USER HOST_A_user FOR LOGIN HOST_A_login; GO
Kojarzenie certyfikat z użytkownikiem.
CREATE CERTIFICATE HOST_A_cert AUTHORIZATION HOST_A_user FROM FILE = 'C:\HOST_A_cert.cer' GO
Udziel uprawnienia POŁĄCZ logowania zdalnego punktu końcowego dublowanie.
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_A_login]; GO
Ważne: |
---|
Jeśli jest planowane uruchomienie w trybie wysokiego bezpieczeństwa z automatyczna praca awaryjna, należy powtórzyć te same kroki instalacji skonfigurować Monitor dla połączeń wychodzących i przychodzących.zestawting połączeń przychodzących, gdy zaangażowanych jest świadka wymaga możesz zestaw dla monitora w obu partnerów i dla obu partnerów na monitor w górę logowania i użytkowników. |
Aby uzyskać więcej informacji, zobacz Jak Zezwalaj na bazy danych dublowania, aby używać certyfikatów dla połączeń przychodzących (Transact-SQL).
[Do góry]
Tworzenie dublowania bazy danych
Aby uzyskać informacje dotyczące tworzenia duplikat bazy danych, zobacz Jak Przygotowywanie bazy danych dublowania do dublowania (Transact-SQL).
Konfigurowanie partnerów dublowania
W wystąpieniu serwera dublowanie na HOST_B zestaw w wystąpieniu serwera na HOST_A jako partner (co wystąpienie serwera początkowego główne).Podstaw prawidłowego adresu sieciowego dla TCP://HOST_A.Mydomain.Corp.Adventure-Works.com:7024.Aby uzyskać więcej informacji, zobacz Określanie adresu sieciowego serwera (dublowania bazy danych).
--At HOST_B, set server instance on HOST_A as partner (principal server): ALTER DATABASE AdventureWorks2008R2 SET PARTNER = 'TCP://HOST_A.Mydomain.Corp.Adventure-Works.com:7024'; GO
W wystąpieniu serwer dublowany na HOST_A zestaw w wystąpieniu serwera na HOST_B jako partner (co wystąpienie serwera początkowego lustrzane).Podstaw prawidłowego adresu sieciowego dla TCP://HOST_B.Mydomain.Corp.Adventure-Works.com:7024.
--At HOST_A, set server instance on HOST_B as partner (mirror server). ALTER DATABASE AdventureWorks2008R2 SET PARTNER = 'TCP://HOST_B.Mydomain.Corp.Adventure-Works.com:7024'; GO
W tym przykładzie założono, że sesja zostanie uruchomiony w trybie wysokiej wydajności.Aby skonfigurować tej sesja trybu wysokiej wydajności w wystąpieniu serwera głównego (w HOST_A), zestaw bezpieczeństwa transakcji do OFF.
--Change to high-performance mode by turning off transacton safety. ALTER DATABASE AdventureWorks2008R2 SET PARTNER SAFETY OFF; GO
Ostrzeżenie
Jeśli jest planowane uruchomienie w trybie wysokiego bezpieczeństwa z automatyczna praca awaryjna, pozostaw zestaw bezpieczeństwa transakcji pełne (ustawienie domyślne) i dodać Monitor możliwie najszybciej po wykonywanie drugiego partnera USTAWIĆ 'partner_server" instrukcja.Należy zauważyć, że monitor musi być skonfigurowany dla połączeń wychodzących i przychodzących.
[Do góry]
Zobacz także