Udostępnij za pośrednictwem


Jak Konfigurowanie Nonpartitioned, dwukierunkowe, transakcyjne replikacja (replikacja programowania języka Transact-SQL)

Dwukierunkowa replikacja transakcyjnej jest topologię replikacja transakcyjnej określonych, która zezwala na dwa serwery wymiany zmian ze sobą: Każdy serwer publikuje dane, a następnie zgadza się na publikacja w sieci z tych samych danych z innego serwera.

Ta topologia jest także obsługiwane przez replikacja transakcyjnej typu peer-to-peer, ale dwukierunkowy replikacja może zapewnić lepszą wydajność.Aby uzyskać więcej informacji zobacz Typu peer-to-peer transakcyjne replikacja.

Aby skonfigurować nonpartitioned, dwukierunkowej topologii replikacja transakcyjnej między bazami danych na dwóch serwerach

  1. Włączanie każdego serwera Wydawca i dystrybutor.Aby uzyskać więcej informacji zobacz Jak Konfigurowanie publikacji i dystrybucji (Programowanie replikacja języka Transact-SQL).

  2. Na każdym serwerze bazy danych, aby być replikowany dwukierunkowo wykonać sp_replicationdboption (Transact-SQL). Określ nazwę bazy danych @ dbname, wartość publish dla @ optname, a wartość true dla wartość @.

  3. Na każdym serwerze bazy danych, aby być replikowany dwukierunkowo wykonać sp_addpublication (języka Transact-SQL). Określ nazwę dla publikacja @ publikacja.

  4. Na każdym serwerze bazy danych, aby być replikowany dwukierunkowo wykonać sp_addarticle (języka Transact-SQL). Należy określić następujące parametry:

    • @ artykuł - nazwę artykuł.

    • @ publikacja - nazwa publikacja od kroku 3.

    • @ source_object — Nazwa tabela opublikowane.

    • @ destination_table — nazwa równoważne tabela w bazie danych na innym serwerze.

    • @ schema_option - upewnić się, że wartość 0x02 is not zestaw.

      Uwaga

      Gdy wartość 0x02 is not zestaw, an & (Bitwise AND) (Transact-SQL) Operacja na @ schema_option Zwraca wartość 0.Aby wykonać tę operację, należy przekonwertować binary wartości int.

    • @ ins_cmd - a value of Wywołaj sp_ins_destination_article_name .

    • @ upd_cmd - a value of Sp_upd_ SCALLdestination_article_name .

    • @ del_cmd - a value of Wywołaj sp_del_destination_article_name .

      Uwaga

      Wartości te reprezentują domyślnych formatów wywołania.Wywołanie w innych formatach może być używany.

  5. Powtórz krok 4 dla każdego artykuł w publikacja dwukierunkowego.

  6. Na każdym serwerze bazy danych, aby być replikowany dwukierunkowo wykonać sp_addsubscription (Transact-SQL). Należy określić następujące parametry:

    • @ publikacja - nazwa publikacja z kroku 3.

    • @ subskrybent - nazwę innego serwera.

    • @ destination_db — nazwa bazy danych na innym serwerze.

    • @ sync_type - a value of Brak.

    • @ Stan - a value of aktywne.

    • @ loopback_detection - a value of wartość true.

  7. Na każdym serwerze bazy danych, aby być replikowany dwukierunkowo wykonać sp_addpushsubscription_agent (Transact-SQL). Należy określić następujące parametry:

    • @ publikacja - nazwa publikacja z kroku 3.

    • @ subskrybent - nazwę innego serwera.

    • @ subscriber_db — nazwa bazy danych na innym serwerze.

    • @ job_login - the Microsoft Poświadczenia systemu Windows, pod którym działa agent dystrybutor u dystrybutor.

    • @ job_password - hasło dla poświadczenia systemu Windows, pod którym działa agent dystrybutor u dystrybutor.

      Security noteSecurity Note:

      Jeśli jest to możliwe, monituje użytkowników o wprowadzenie poświadczenia zabezpieczeń w czasie wykonywania.Jeśli poświadczenia muszą być przechowywane w pliku skryptu, należy zabezpieczyć plik, aby uniemożliwić nieautoryzowany dostęp.

  8. Korzystając z nazwy określone w kroku 4, utwórz niestandardowe procedur przechowywanych do obsługi konfliktów, a następnie wykonaj wstawia, aktualizacji i usuwania.Aby uzyskać więcej informacji zobacz Jak zestaw Zmiany metoda propagacji danych transakcyjnych artykułów (Programowanie replikacja języka Transact-SQL).

Example

W tym przykładzie powoduje utworzenie dwóch badań baz danych na tym samym serwerze, a następnie konfiguruje nonpartitioned, dwukierunkowe replikacja transakcyjnej między nimi.