Replikacja i dublowania baz danych

Dublowanie baz danych można zwiększyć dostępność niektórych baz danych replikacja.Obsługuje łączenie replikacja transakcyjna z bazą danych dublowanie zależy uważane za której replikacja bazy danych.Peer-to-Peer replikacja nie jest obsługiwana w połączeniu z dublowanie bazy danych.Aby uzyskać więcej informacji na temat dublowanie bazy danych, zobacz Dublowanie administracji bazy danych.

W poniższej tabela przedstawiono replikacja bazy danych i odpowiedni poziom obsługi dublowanie.

Replikacji bazy danych.

Obsługiwane przez bazę danychdublowanie

Publikacja

Tak.

Obsługiwane zarówno korespondencji seryjnej i replikacja transakcyjna z automatycznej pracy awaryjnej.Agenci replikacja, łączących się z baza danych publikacja można automatycznie awaryjnej dublowanej baza danych publikacja.W przypadku wystąpienia awarii agentów, połączyć się z baza danych publikacja automatycznie ponownie się do nowej bazy danych głównych.

Rozkład

Nr.

Dublowanie baza danych dystrybucji nie jest obsługiwane.baza danych dystrybucji jest gdzie przechowywane konfiguracja replikacja i konfiguracja metadane jest ściśle sprzężona z nazwa serwera, na którym dystrybutor jest konfigurowana.Nazwa serwera zmieni się podczas pracy awaryjnej dublowanego bazy danych, ale konfiguracja danych przechowywanych w bazie danych dystrybucji wskaże starego serwera baza danych dystrybucji.

Subskrypcja

Tak.

Obsługiwane począwszy od SQL Server 2008 na replikacja transakcyjna z ręczna praca awaryjna i konfiguracjaAgenci replikacja, łączących się z baza danych subskrypcja nie są znane dublowania.Jeżeli główny zobowiązany baza danych subskrypcji się nie powiedzie, pracy awaryjnej do pomocnicza baza danych wymaga wykonać kilka czynności ręcznie przywrócić strumienia replikacja.Aby uzyskać więcej informacji, zobacz SQL Server replikacji: Wysokiej dostępności za pomocą dublowania bazy danych (SQL Server artykuł techniczny).

Aby uzyskać informacje dotyczące odzyskiwania baza danych dystrybucji lub baza danych subskrypcja bez potrzeby zmiany konfiguracji replikacja, zobacz Wykonywanie kopii zapasowych i przywracaniu zreplikowanych baz danych.

Ostrzeżenie

Po przejęciu awaryjnym lustrzanych głównego zobowiązanego.W tym temacie "główne" i "lustrzane" zawsze odnoszą się do oryginalnego kapitału i dublowania.

Wymagania i uwagi dotyczące dublowania bazy danych przy użyciu replikacji

Należy zwrócić uwagę na następujące wymagania i uwagi podczas korzystania z replikacja z dublowanie bazy danych:

  • Kapitał i dublowanie należy udostępnić dystrybutora.Zaleca się to być dystrybutor zdalny, który zapewnia większą odporność na uszkodzenia, jeżeli wydawca nieplanowanego przełączania awaryjnego.

  • The Publisher and Distributor must be Microsoft SQL Server 2005 or a later version.Subskrybenci mogą być dowolnej wersja, ale replikacja scalająca ściągać subskrypcji z wersja przed SQL Server 2005 nie obsługują awaryjnego przeniesienia; w takim przypadek agent jest uruchamiany przez subskrybenta i poprzednie wersje agenta nie są świadomi dublowania.Replikacja takie subskrybentom wznawia niespełnieniu bazy danych z kopii woluminu dublowanego do głównego zobowiązanego.

  • Replikacja obsługuje dublowanie baza danych publikacji dla replikacja scalająca i replikacja transakcyjna ze subskrybentów tylko do odczytu lub aktualizowania subskrybentów w kolejce.Natychmiastowe aktualizowanie subskrybentów i wydawców Oracle wydawców w topologii peer-to-peer i republishers nie są obsługiwane.

  • Metadane i obiektów znajdujących się poza bazą danych nie są kopiowane do woluminu dublowanego: logowania, zadania, serwerów połączonych i tak dalej.Jeśli wymagasz metadane i obiekty w lusterka, należy skopiować je ręcznie.Aby uzyskać więcej informacji, zobacz Zarządzanie logowania i zadania po zmianie roli.

Konfigurowanie replikacji z dublowania baz danych

Konfigurowanie replikacja i dublowanie bazy danych obejmuje pięć kroków.Każdy etap jest opisany bardziej szczegółowo w poniższej sekcji.

  1. Konfigurowanie Wydawca.

  2. Konfigurowanie dublowanie bazy danych.

  3. Skonfiguruj dublowanie używany ten sam dystrybutor jako głównego zobowiązanego.

  4. Konfigurowanie replikacja agentów do pracy awaryjnej.

  5. Dodaj kapitału i dublowania Monitor replikacji.

Można również przeprowadzić kroki 1 i 2 w przeciwnej kolejności.

Aby skonfigurować dublowania baz danych dlabaza danych publikacja

  1. Konfigurowanie Wydawca:

    1. Zaleca się używanie dystrybutor zdalny.Aby uzyskać więcej informacji na temat konfigurowania dystrybucji, zobacz Konfigurowanie dystrybucji.

    2. Można włączyć bazę danych dla migawka i publikacje transakcyjnych i/lub publikacji korespondencji seryjnej.Dublowany baz danych zawierających więcej niż jeden typ publikacja, należy włączyć bazy danych dla obu typów, w tym samym przy użyciu węzła sp_replicationdboption.Na przykład wykonać następującego wywołań procedura składowana na głównej:

      exec sp_replicationdboption @dbname='<PublicationDatabase>', @optname='publish', @value=true
      exec sp_replicationdboption @dbname='<PublicationDatabase>', @optname='mergepublish', @value=true
      

      Aby uzyskać więcej informacji na temat tworzenia publikacji, zobacz Publikowanie danych i obiektów bazy danych.

  2. Konfigurowanie dublowanie bazy danych.Aby uzyskać więcej informacji, zobacz Jak Konfigurowanie bazy danych, dublowanie sesji (SQL Server Management Studio) i Konfigurowanie dublowania baz danych.

  3. Skonfiguruj dystrybucji dla dublowania.Określ nazwę dublowanie jako wydawca i określ ten sam dystrybutor oraz folderu migawka korzystającej z głównego zobowiązanego.Na przykład, jeśli konfigurujesz replikacja z procedur przechowywanych, wykonać sp_adddistpublisher u dystrybutora; a wykonać sp_adddistributor w lusterka.Dla sp_adddistpublisher:

    • Ustaw wartość programu publisher @ parametr Nazwa sieciowa lusterka.

    • Ustaw wartość @ working_directory parametru do folderu migawka używane przez głównego zobowiązanego.

  4. Określ nazwę dublowanie –PublisherFailoverPartner parametr agenta.Agent ten parametr jest wymagany dla następujących agentów do identyfikowania lusterka po pracy awaryjnej:

    • Agent migawki (wszystkie publikacje)

    • Agent odczytywania dziennika(dla wszystkich publikacji transakcyjnych)

    • Kolejka czytnik Agent (publikacje transakcyjnej obsługi w kolejce subskrypcje aktualizacji)

    • Scalanie Agent (dla korespondencji seryjnej subskrypcji)

    • SQL Serverodbiornik replikacja (replisapi.dll: Scalanie subskrypcje synchronizowane przy użyciu sieci synchronizacja w sieci Web)

    • Formant ActiveX scalania SQL (dla subskrypcji korespondencji seryjnej, zsynchronizowane z formantu)

    Agent dystrybucji i dystrybucji formant ActiveX nie ma tego parametru, ponieważ nie łączą się z Wydawca.

    Agent parametr zmiany zostaną wprowadzone przy następnym czas agent jest uruchomiony.Agent działa w sposób ciągły, należy zatrzymać i ponownie uruchomić agenta.Parametry można określić w profilach agenta i wiersz polecenia.Aby uzyskać więcej informacji, zobacz:

    Zaleca się dodanie –PublisherFailoverPartner do profilu programu agent, a następnie określając nazwę dublowanie w profilu.Na przykład, jeśli konfigurujesz replikacja z procedury przechowywane:

    -- Execute sp_help_agent_profile in the context of the distribution database to get the list of profiles.
    -- Select the profile id of the profile that needs to be updated from the result set.
    -- In the agent_type column returned by sp_help_agent_profile: 
    -- 1 = Snapshot Agent; 2 = Log Reader Agent; 3 = Distribution Agent; 4 = Merge Agent; 9 = Queue Reader Agent.
    
    exec sp_help_agent_profile
    
    -- Setting the -PublisherFailoverPartner parameter in the default Snapshot Agent profile (profile 1).
    -- Execute sp_add_agent_parameter in the context of the distribution database.
    exec sp_add_agent_parameter @profile_id = 1, @parameter_name = N'-PublisherFailoverPartner', @parameter_value = N'<Failover Partner Name>'
    
    -- Setting the -PublisherFailoverPartner parameter in the default Merge Agent profile (profile 6).
    -- Execute sp_add_agent_parameter in the context of the distribution database.
    exec sp_add_agent_parameter @profile_id = 6, @parameter_name = N'-PublisherFailoverPartner', @parameter_value = N'<Failover Partner Name>'
    
  5. Dodaj kapitału i dublowania Monitor replikacji.Aby uzyskać więcej informacji, zobacz Jak Dodawanie i usuwanie wydawców z Monitor replikacji (Monitor replikacji).

Konserwowanie bazy danych dublowanego publikacji

Utrzymywanie dublowanego baza danych publikacja jest zasadniczo taki sam, jak zachowanie-dublowane bazie z następujące kwestie:

  • Administracja i monitorowanie musi przypadać na active server.W SQL Server Management Studio, publikacje są wyświetlane w obszarze Lokalnego publikacje folder tylko dla aktywnego serwera.Na przykład jeśli pracy można awaryjnej do woluminu dublowanego, publikacje są wyświetlane w lusterka i nie są wyświetlane w głównej.Jeśli baza danych nie nad dublowania, może być konieczne ręczne odświeżanie Management Studio i Monitor replikacji zmiany odzwierciedlenie.

  • Monitor replikacji Wyświetla Wydawca węzłów w drzewie obiektów dla głównego zobowiązanego i lusterka.Jeżeli główny zobowiązany jest active server, informacji o publikacja jest wyświetlany tylko główne w węźle Monitor replikacji.

    Jeśli lusterko jest active server:

    • Jeśli błąd agenta, tylko w węźle głównym nie w węźle dublowanie wskazuje błąd.

    • Jeżeli główny zobowiązany jest niedostępny, węzły kapitału i dublowania wyświetlają listy identycznych publikacji.Monitorowanie powinna być wykonywana na publikacje w węźle dublowania.

  • Podczas spraw za pomocą procedur przechowywanych lub obiektów zarządzania replikacji (RMO) do administrowania dla replikacji w lusterka, w którym można określić Wydawca nazwę, należy określić nazwę instancji, na którym baza danych została włączona replikacja.Aby określić odpowiednią nazwę, należy użyć funkcja publishingservername.

    Gdy baza danych publikacja jest dublowany, metadane replikacja, przechowywane w bazie danych dublowany jest identyczny z metadanych w głównej bazie danych.W konsekwencji dla publikacja włączona replikacja na głównej bazy danych, nazwa wystąpienie Wydawca przechowywanych w tabele systemowe woluminu dublowanego jest nazwa podmiotu nie dublowania.Jeśli dotyczy replikacja konfiguracja i konserwacji baza danych publikacja awaryjna dublowanie.Na przykład, jeżeli po przejęciu awaryjnym konfigurowania replikacja z procedur przechowywanych na lusterku i chcesz dodać subskrypcja wciągana do bazy danych do publikacja, która została włączona w głównej, należy określić nazwy głównej, a nie nazwę dublowanie programu publisher @ parametr sp_addpullsubscription lub sp_addmergepullsubscription.

    Włączenie bazy danych publikacja w lusterka po awaryjnym przeniesieniu do woluminu dublowanego, nazwa wystąpienie Wydawca są przechowywane w tabele systemowe jest nazwą woluminu dublowanego; w takim przypadek użyje nazwy dublowanie dla programu publisher @ parametru.

    Ostrzeżenie

    W niektórych przypadkach takich jak sp_addpublication, programu publisher @ parametr jest obsługiwana tylko dla nie-SQL Server wydawców; w tych przypadkach nie jest istotne dla SQL Server dublowanie bazy danych.

  • Aby zsynchronizować subskrypcja w Management Studio po przejęciu awaryjnym: synchronizowanie ściągać subskrypcji od subskrybenta; i zsynchronizować wypychanie subskrypcji z aktywnego Wydawca.

Zachowanie replikacji, jeżeli dublowanie zostanie usunięty.

Jeśli dublowanie bazy danych jest usuwany z opublikowaną bazą danych, należy pamiętać o następujących problemów:

  • Jeśli baza danych publikacja na główny zobowiązany jest już dublowanych, replikacja kontynuuje prace niezmienione przeciwko oryginalnego głównego zobowiązanego.

  • Jeśli baza danych publikacja nie nad z głównej relacji dublowania i lusterko jest później wyłączone lub usunięte, agenci replikacja nie będą działać przeciwko dublowanie.Główny zobowiązany jest trwale utracone, wyłącz, a następnie skonfigurować dublowaniem określone jako wydawca replikacja.

  • Usunięcie dublowanie bazy danych jest całkowicie duplikat bazy danych jest w stanie odzyskiwanie i musi zostać przywrócony do stają się funkcjonalności.Zachowanie odzyskane bazy danych w odniesieniu do replikacja zależy od tego, czy określono opcję KEEP_REPLICATION.Opcja wymusza operacji przywracanie, aby zachować ustawienia replikacja podczas przywracanie opublikowanych bazy danych na serwerze, innych niż utworzenia kopia zapasowa.Użyj tylko wtedy, gdy opcja KEEP_REPLICATION innych baza danych publikacja jest niedostępny.Opcja nie jest obsługiwana, jeśli drugi baza danych publikacja jest nadal nienaruszone i replikujących.Aby uzyskać więcej informacji o KEEP_REPLICATION, zobacz RESTORE (Transact-SQL).

Agent odczytywania dziennikaZachowanie

W poniższej tabela opisano Agent odczytywania dziennika zachowanie różne tryby działania z dublowanie baz danych.Aby uzyskać więcej informacji na temat trybów operacyjnych, zobacz Ustawienia języka Transact-SQL i bazy danych, dublowanie tryby działania.

Tryb działania

Agent odczytywania dziennikazachowanie, jeśli lusterko jest niedostępny

Trybie wysokiego bezpieczeństwaautomatyczna praca awaryjna

Jeśli lusterko jest niedostępny, Agent odczytywania dziennika propaguje poleceń do baza danych dystrybucji.Główny zobowiązany nie pracy awaryjnej do dublowania aż do trybu online i ma wszystkie transakcje z głównej dublowanie.

Tryb wysokiej wydajności

Jeśli lusterko jest niedostępny, dublowana baza danych jest uruchomiona narażonych (czyli unmirrored).Jednak Agent odczytywania dziennika replikacji tylko te transakcje, które są kula na lusterku.Jeśli usługa jest zmuszony i serwer duplikatu przyjmuje rolę głównego zobowiązanego, Agent odczytywania dziennika będą działać przeciwko lusterka i rozpocząć pobieranie nowych transakcji.Aby uzyskać więcej informacji, zobacz Wymuszone usługi (o możliwej utracie danych).

Należy pamiętać, że replikacja opóźnienie zwiększy Jeśli lusterko przypada za głównego zobowiązanego.

Tryb wysokiego bezpieczeństwa bezautomatyczna praca awaryjna

Wszystkie przekazane transakcje zapewniona jest zaostrzony dysku na lusterku.Agent odczytywania dziennika Jest replikowany tylko transakcje, które są kula na lusterku.Jeśli lusterko jest niedostępny, główny zobowiązany uniemożliwia dalsze działanie bazy danych; Dlatego Agent odczytywania dziennika nie ma transakcji do replikacji.