Udostępnij za pośrednictwem


Za pomocą modułach bazy danych

dublowanie bazy danych, wprowadzone w SQL Server 2005, jest przede wszystkim rozwiązanie programowe zwiększenia nadmiarowość danych i dostępność bazy danych. SQL Server klient macierzysty obsługuje niejawna dublowanie bazy danych, więc deweloper nie jest konieczne do pisania kodu lub wykonywania innych działań, gdy został skonfigurowany w bazie danych.

dublowanie bazy danych, który zaimplementowano w oparciu o na bazę danych, przechowuje kopie SQL Server produkcyjnej bazy danych na serwer rezerwy. Ten serwer jest albo dostępu lub gorący serwer rezerwy, w zależności od konfiguracja i stanu sesja dublowanie bazy danych.Gorąco serwer rezerwy obsługuje szybkiego trybu pracy awaryjnej, bez utraty transakcji zatwierdzonych i ciepłe serwer rezerwy obsługuje wymuszanie usługa (o możliwości utraty danych).

W produkcyjnej bazie danych jest nazywany główna baza danychnosi i wstrzymania kopiilustrzana baza danych.Główna baza danych i lustrzana baza danych musi znajdować się na osobnych wystąpień SQL Server (wystąpień serwera), i jeśli to możliwe, są one powinny przechowywane na oddzielnych komputerach.

Wystąpienie serwera produkcyjnego, o nazwie serwer główny, komunikuje się z wystąpieniem serwera zapasowego, o nazwie serwer dublowany.Kapitał i dublowania serwery działają jako partnerzy w ramach dublowanie bazy danych Sesja.Serwerem głównym nie powiedzie się, serwer dublowany mogą tworzyć swoją bazę danych do główna baza danych przy użyciu procesu o nazwie Praca awaryjna.Na przykład Partner_A i Partner_B są dwa serwery partner, z główna baza danych początkowo na Partner_A jako serwer główny i lustrzana baza danych, znajdujących się na Partner_B jako serwer dublowany.Jeśli Partner_A przechodzi w tryb offline, baza danych na Partner_B może nie być możliwe za pośrednictwem stanie się bieżącym główna baza danych.Partner_A dołącza sesja dublowanie, stał się serwer dublowany, a jego bazy danych staje się lustrzana baza danych.

Alternatywne bazy danych konfiguracji dublowanie oferują różne poziomy wydajności i bezpieczeństwa danych i obsługuje różne rodzaje pracy awaryjnej.Aby uzyskać więcej informacji zobaczDatabase Mirroring Overview.

Istnieje możliwość użycia alias, określając nazwę lustrzana baza danych.

Uwaga

Aby uzyskać informacje na temat próby połączenia początkowego i próby ponownego połączenia dublowane bazy danych zobacz Connecting Clients to a Mirrored Database.

Uwagi dotyczące programowania

Serwer główny bazy danych kończy się niepowodzeniem, aplikacja klient otrzymuje błędy w odpowiedzi na wywołania interfejsu API, które wskazują, że zostało utracone połączenie z bazą danych.W takim przypadku wszystkie nieprzekazane zmiany w bazie danych zostaną utracone, a bieżąca transakcja jest cofana.W takim przypadku aplikacji należy zamknąć połączenie (lub zwolnić obiektu urządzenie źródłowe danych) i ponownie je Otwórz.Połączenie jest przezroczysty re-directed do lustrzana baza danych, która obecnie działa jako serwer główny.

Po ustanowieniu połączenia serwer główny wysyła tożsamość swojego partner pracy awaryjnej klient ma być używany, gdy wystąpi pracy awaryjnej.Aplikacja próbowała nawiązać połączenie po serwer główny nie powiodło się, klient nie zna tożsamość partner pracy awaryjnej.Aby umożliwić klientom możliwość radzenia sobie z tego scenariusza, właściwość inicjowania i kluczowym ciąg połączenia skojarzone pozwalają klientowi do określania tożsamości partner pracy awaryjnej na swoją własną.Atrybut klient jest używany tylko w tym scenariuszu, jeżeli dostępny jest serwer główny, nie jest on używany.Jeśli serwer partnera pracy awaryjnej, dostarczonych przez klient nie odnosi się do serwera, działającego jako partner pracy awaryjnej, połączenie jest odrzucone przez serwer.Aby umożliwić aplikacji w celu dostosowania do zmian w konfiguracja, można ustalić tożsamości partner rzeczywistej pracy awaryjnej inspekcji atrybut po nawiązaniu połączenia.Należy wziąć pod uwagę buforowanie informacji partner w celu zaktualizowania ciąg połączenia lub opracować strategię ponawiania w przypadku, gdy nie powiedzie się pierwsza próba na nawiązywania połączenia.

Uwaga

Należy jawnie określić bazy danych ma być używana przez połączenie, jeśli chcesz użyć tej funkcji w DSN, ciąg połączenia lub atrybut właściwość połączenia.SQL Server Macierzysta klient nie będzie próbował pracy awaryjnej w bazie danych partner, jeśli nie można to zrobić.

Dublowanie to funkcja bazy danych.Aplikacje korzystające z wielu baz danych może być niemożliwe w celu wykorzystania tej funkcji.

Ponadto nazwy serwerów jest rozróżniana wielkość znaków, ale nazwy bazy danych jest rozróżniana wielkość liter.W związku z tym upewnij się, że korzystanie z tego samego obudowy źródła DSN i ciągów połączenia.

Dostawca OLE DB programu SQL Server Native Client

The SQL Server Native klient OLE DB dostawca supports dublowanie bazy danych through connection and ciąg połączenia attributes. Właściwość SSPROP_INIT_FAILOVERPARTNER został dodany do zestaw właściwości DBPROPSET_SQLSERVERDBINIT oraz FailoverPartner słowo kluczowe jest nowy atrybut ciąg połączenia dla DBPROP_INIT_PROVIDERSTRING. Aby uzyskać więcej informacji zobaczPrzy użyciu słów kluczowych ciąg połączenia z SQL Server Native klient.

Pamięć podręczną trybu pracy awaryjnej jest utrzymywane tak długo, jak jest ładowany przez dostawca, czyli do CoUninitialize o nazwie lub tak długo, jak aplikacja odwołuje się do jakiegoś obiektu zarządza jestSQL Server Macierzystego dostawca klient OLE DB, na przykład obiekt urządzenie źródłowe danych.

Aby uzyskać szczegółowe informacje na temat SQL Server Macierzysta obsługa dostawca klient OLE DB dla dublowanie bazy danych, zobacz Inicjowanie i właściwości autoryzacja.

Program SQL Server macierzysty sterownik ODBC klient

The SQL Server Native klient ODBC driver supports dublowanie bazy danych through connection and connection ciąg attributes. W szczególności atrybut SQL_COPT_SS_FAILOVER_PARTNER został dodany do użytku z SQLSetConnectAttr and SQLGetConnectAttr funkcji; i Failover_Partner słowo kluczowe zostało dodane jako nowy atrybut ciąg połączenia.

Pamięć podręczną trybu pracy awaryjnej jest utrzymywane tak długo, jak długo aplikacja ma co najmniej jeden uchwytu środowiska przydzielony.Z kolei jest utracone przydziałów jest ostatnim uchwytu środowiska.

Uwaga

Menedżer sterownika ODBC zostało rozszerzone do obsługi specyfikacja nazwa serwera pracy awaryjnej.