Olağanüstü durum kurtarma, yüksek kullanılabilirlik için SQL Server yerel istemci desteği
This topic discusses SQL Serveryerel istemci desteği (eklenen SQL Server 2012) için AlwaysOn Kullanılabilirlik Grupları. Hakkında daha fazla bilgi için AlwaysOn Kullanılabilirlik Gruplarıbakın Kullanılabilirlik grubu dinleyici, istemci bağlantısı ve uygulama yük devretme (SQL Server), Oluşturma ve yapılandırma kullanılabilirliğini grupları (SQL Server), Yük Devretme Kümelemesi ve AlwaysOn kullanılabilirlik grupları (SQL Server), ve Okunabilir ikincil kopyaları (AlwaysOn kullanılabilirlik grupları).
Verilen kullanılabilirlik grubu kullanılabilirliği grubu dinleyici bağlantı dizesini belirtebilirsiniz. Eğer bir SQL Serveryerel istemci uygulaması yerine bir kullanılabilirlik grubundaki bir veritabanına bağlı, orijinal bağlantı kesilir ve uygulama çalışmaları yerine çalışma devam etmek için yeni bir bağlantı açmak gerekir.
Bir kullanılabilirlik grubu dinleyici bağlanma değil ve eğer birden çok IP adresini bir ana bilgisayar ile ilgili SQL Serveryerel istemci yineleme sırayla aracılığıyla dns girdisi ile ilişkili tüm IP adreslerini. Bu zaman ilk IP adresini dns sunucusu tarafından döndürülen herhangi bir ağ arabirim kartı (NIC) ilişkili değilse alıcı olabilir. Bir kullanılabilirlik grubun dinleyicisi için bağlanırken SQL Serveryerel istemci paralel olarak tüm IP adreslerinin bağlantı kurmaya çalışır ve bağlantı girişimi başarılı olursa, sürücü bekleyen bağlantı girişimleri atacak.
[!NOT]
Bağlantı zaman aşımı süresini artırma ve bağlantıyı yeniden deneyin mantığı uygulayan bir uygulama kullanılabilirliğini grubuna bağlanır olasılığını artıracaktır. Ayrıca, bağlantı nedeniyle bir kullanılabilirlik Grup yerine çalışma başarısız olduğundan, yeniden o kadar başarısız bağlantı yeniden deneniyor bağlantı yeniden deneme mantık, uygulanması.
MultiSubnetFailover ile bağlanma
Her zaman belirtmek MultiSubnetFailover=Truebir SQL Server 2012 kullanılabilirlik grubu dinleyici veya SQL Server 2012 yük devretme küme örneği. MultiSubnetFailovertüm kullanılabilirlik grupları ve yerine çalışma için hızlı yük devretme küme örneği SQL Server 2012 ve anlamlı olacaktır tek ve multi-subnet AlwaysOn topolojileri için yerine çalışma süresini azaltmak. Multi-subnet yerine çalışma sırasında istemci bağlantılarını paralel çalışacaktır. Bir alt ağ yerine çalışma sırasında SQL Serveryerel istemci agresif tcp bağlantısını yeniden.
MultiSubnetFailoverBağlantı özelliği, uygulamanın kullanılabilirliğini grup veya yerine çalışma küme örneği ve bu dağıtılacağını gösterir SQL Serveryerel istemci birincil veritabanına bağlanmayı dener SQL Servertüm IP bağlanmaya tarafından örneği adresleri. Ne zaman MultiSubnetFailover=Yesbelirtilen bir bağlantı için istemci işletim sisteminin varsayılan tcp Aktarım aralıkları daha hızlı tcp bağlantı kalkışmak yeniden deneme sayısı. Bu daha hızlı yeniden bağlanma-failover sonra AlwaysOn kullanılabilirlik Grup ya da AlwaysOn yük devretme küme örneği sağlar ve hem tekli ve çoklu subnet kullanılabilirlik grupları ve yerine çalışma küme örnekleri için geçerlidir.
Bağlantı dizesi anahtar sözcükler hakkında daha fazla bilgi için bkz: SQL Server ile yerel istemci bağlantı dizesi anahtar sözcükler kullanma.
Belirtme MultiSubnetFailover=Yesne zaman bir şey bir kullanılabilirlik grubu dinleyici veya yerine çalışma küme örneği dışında bağlanan bir negatif performans etkisi neden olabilir ve desteklenmiyor.
Kullanılabilirlik grup veya yerine çalışma küme örneğinin bir sunucuya bağlanmak için aşağıdaki yönergeleri kullanın:
Kullanım MultiSubnetFailoverbir tek alt ağ veya TCP/IP; bağlanırken bağlantı özelliği Bu iki performansını artırır.
Bir kullanılabilirlik grubuna bağlanmak için kullanılabilirlik grubunun kullanılabilirliğini grubu dinleyici sunucusu bağlantı dizesi olarak belirtin.
Bağlanan bir SQL Serverörneği fazla 64 IP adresleriyle yapılandırılmış bir bağlantı hatası neden olur.
Kullanan bir uygulama davranışını MultiSubnetFailoverbağlantı özelliği kimlik doğrulama türünden etkilenmez: SQL Serverkimlik doğrulaması, Kerberos kimlik doğrulaması veya Windows kimlik doğrulaması.
Değerini artırabilir loginTimeoutyerine çalışma süresi için uyum ve uygulama bağlantı yeniden deneme girişimi azaltın.
Dağıtılmış işlemler desteklenmiyor.
Kullanılabilirlik grubundaki bir ikincil kopya yere bağlayan, salt yönlendirme etkin değilse, aşağıdaki durumlarda başarısız olur:
Eğer ikincil kopya konumu bağlantıları kabul etmek üzere yapılandırılmamış.
Uygulama kullanıyorsa, ApplicationIntent=ReadWrite(aşağıda açıklanan) ve ikincil kopya konumu salt okunur erişim için yapılandırılır.
Birincil Yineleme salt okunur çalışma yüklerini reddetmek için yapılandırılmışsa ve bağlantı dizesini içeren bir bağlantı başarısız ApplicationIntent=ReadOnly.
Veritabanı yansıtma kullanma Multi-Subnet kümeleri yükseltme
Bağlantı hata oluşacaktır MultiSubnetFailoverve Failover_Partnerbağlantı anahtar bağlantı dizesinde bugünkü. Bir hata durumunda da ortaya MultiSubnetFailoverkullanılan ve SQL Serverçifti yansıtma veritabanı bir parçası olduğunu gösteren yerine çalışma ortağı yanıt verir.
Yükseltme yöntemini seçerseniz bir SQL ServerŞu anda multi-subnet bir senaryo için veritabanı yansıtma kullanan yerel istemci uygulama kaldırmanız Failover_Partnerbağlantı özelliği ve değiştirmek MultiSubnetFailoveriçin Yesve bir kullanılabilirlik grubu dinleyici bağlantı dizesi sunucu adı yerine. Bağlantı dizesi kullanıyorsa, Failover_Partnerve MultiSubnetFailover=true, sürücü bir hata üretecektir. Ancak, bir bağlantı dizesi kullanıyorsa, Failover_Partnerve MultiSubnetFailover=false(veya ApplicationIntent=ReadWrite), uygulama, veritabanı yansıtma kullanacak.
Sürücü yansıtma veritabanı kullanılabilirlik grubunda birincil veritabanı kullanılır ve eğer bir hata döndürecektir MultiSubnetFailover=trueyerine birincil veritabanı kullanılabilirlik grubun dinleyicisi için bağlanan bağlantı dizesi kullanılır.
Uygulama niyet belirtme
Ne zaman ApplicationIntent=ReadOnly, istemci bir okuma iş yükünü etkin AlwaysOn veritabanına bağlanırken ister. Sunucu bağlantısı zaman ve use Veritabanı deyimi sırasında ama sadece bir her zaman etkin veritabanı için niyet zorunlu kılar.
ApplicationIntentAnahtar does değil iş ile eski, salt veritabanları.
Bir veritabanı izin verebilir veya hedeflenen AlwaysOn veritabanı üzerinde okuma yükleri izin vermeyecek. (Bu ile yapılır ALLOW_CONNECTIONSyan PRIMARY_ROLEve SECONDARY_ROLE Transact-SQLdeyimleri.)
ApplicationIntentAnahtar kelime salt yönlendirmeyi etkinleştirmek için kullanılır.
Salt okunur yönlendirme
Yönlendirme salt okunur bir veritabanı okuma tek çoğaltması kullanılabilirliğini sağlamak bir özelliktir. Salt okunur yönlendirmeyi etkinleştirmek için:
Bir her zaman üzerinde kullanılabilirlik grubu kullanılabilirliği grubu dinleyici bağlanmanız gerekir.
ApplicationIntentBağlantı dizesi anahtar sözcüğü ayarlamak ReadOnly.
Kullanılabilirlik grubu salt okunur yönlendirmeyi etkinleştirmek için veritabanı yöneticisi tarafından yapılandırılmalıdır.
Birden çok bağlantı kullanarak salt okunur yönlendirme tümü aynı salt okunur çoğaltma için bağlanacak mümkündür. Veritabanı eşitleme değişikliklerini veya sunucunun yönlendirme yapılandırması değişiklikleri istemci bağlantıları için farklı salt okunur çoğaltmalar sonuçlanabilir. Tüm salt okunur istekleri aynı salt okunur çoğaltma bağlanmasını sağlamak için bir uygunluk grubu dinleyici geçemiyor Serverbağlantı dizesi anahtar sözcüğü. Bunun yerine, salt örneğinin adını belirtin.
Salt okunur yönlendirme sadece yönlendirme oku ilk birincil bağlanır ve sonra en iyi kullanılabilir okunabilir ikincil için görünüyor çünkü birincil bağlanmaktan daha uzun sürebilir. Bu nedenle, oturum açma zaman aşımı artırmalıdır.
ODBC
İki odbc bağlantı dizesi anahtar sözcükler desteklemek üzere eklenmiştir AlwaysOn Kullanılabilirlik Gruplarıde SQL ServerNative Client:
ApplicationIntent
MultiSubnetFailover
odbc bağlantı dizesi anahtar sözcükler hakkında daha fazla bilgi için SQL ServerYerel bkz: istemci, SQL Server ile yerel istemci bağlantı dizesi anahtar sözcükler kullanma.
Eş bağlantı özellikleri şunlardır:
SQL_COPT_SS_APPLICATION_INTENT
SQL_COPT_SS_MULTISUBNET_FAILOVER
odbc bağlantısı özellikleri hakkında daha fazla bilgi için SQL ServerYerel bkz: istemci, SQLSetConnectAttr.
İşlevselliğini ApplicationIntentve MultiSubnetFailoveranahtar kelimeler odbc veri kaynağı Yöneticisi'nde kullanan DSN'leri maruz SQL Serveryılında başlayan yerel istemci sürücüsü, SQL Server 2012.
A SQL Serveryerel istemci odbc uygulaması üç işlevlerinden biri bağlantı yapmak için kullanabilirsiniz:
İşlev |
Açıklama |
---|---|
Tarafından döndürülen sunucular listesini SQLBrowseConnectVNNs içermeyecektir. İki veya daha fazla sunucu bağımsız bir sunucu veya birincil veya ikincil sunucu olarak bir Windows Server yük devretme kümeleme (wsfc) küme varsa herhangi bir gösterge içeren olmadan yalnızca sunucuların listesini görürsünüz SQL Serveriçin etkinleştirilmiş örnekleri AlwaysOn Kullanılabilirlik Grupları. Bir sunucuya bağlanın ve bir hata alırsanız bir sunucuya bağlı bunun nedeni olabilir ve ApplicationIntentayarı sunucu yapılandırmasıyla uyumlu değildir. Çünkü SQLBrowseConnectiçeren iki veya daha fazla Windows Server yük devretme kümeleme (wsfc) kümesindeki sunucular tanımaz SQL Serveriçin etkinleştirilmiş örnekleri AlwaysOn Kullanılabilirlik Grupları, SQLBrowseConnectyok sayar MultiSubnetFailoverbağlantı dizesi anahtar sözcüğü. |
|
SQLConnecther ikisini de destekler ApplicationIntentve MultiSubnetFailoverbir veri kaynağı adı (dsn) veya bağlantı özellikleri ile. |
|
SQLDriverConnectdestekleyen ApplicationIntentve MultiSubnetFailoverbağlantı dizesi anahtar sözcükler, bağlantı özelliklerini veya DSN'si. |
OLE DB
ole db içinde SQL Serveryerel istemci desteği MultiSubnetFailoveranahtar.
ole db içinde SQL Serveryerel istemci uygulama niyeti destek. Uygulama amacı için ole db uygulamaları aynı odbc uygulamaları (yukarda) olarak davranır.
Desteklemek için eklenen bir ole db bağlantı dizesi anahtar sözcüğü AlwaysOn Kullanılabilirlik Gruplarıde SQL ServerNative Client:
- Application Intent
Bağlantı dizesi anahtar sözcükler hakkında daha fazla bilgi için SQL ServerYerel bkz: istemci, SQL Server ile yerel istemci bağlantı dizesi anahtar sözcükler kullanma.
Eş bağlantı özellikleri şunlardır:
SSPROP_INIT_APPLICATIONINTENT
DBPROP_INIT_PROVIDERSTRING
A SQL Serveryerel istemci ole db uygulama yöntemlerinden uygulama niyeti belirlemek için kullanabilirsiniz:
IDBInitialize::Initialize
IDBInitialize::Initializeveri kaynağı başlatma ve veri kaynağı nesnesi oluşturmak üzere önceden yapılandırılmış özellikler kümesini kullanır. Uygulamanın amacı, bir sağlayıcı özelliği veya genişletilmiş özellikleri dizesi bir parçası olarak belirtin.IDataInitialize::GetDataSource
IDataInitialize::GetDataSourcebir giriş bağlantı dizesi içeren alır Application Intentanahtar.IDBProperties::GetProperties
IDBProperties::GetPropertiesveri kaynağı üzerinde ayarlanmış özelliğinin değeri alır. Sen-ebilmek geri almak Application IntentDBPROP_INIT_PROVIDERSTRING özelliği ve SSPROP_INIT_APPLICATIONINTENT özelliği ile değer.IDBProperties::SetProperties
Ayarlamak için ApplicationIntentözellik değeri, arama IDBProperties::SetPropertiesde geçen SSPROP_INIT_APPLICATIONINTENTözelliği değeri "ReadWrite'' ya da "ReadOnly'' veya DBPROP_INIT_PROVIDERSTRINGözelliği değerini içeren ile "ApplicationIntent=ReadOnly'' ya da "ApplicationIntent=ReadWrite".
Tüm sekmesinin uygulama niyeti özellikleri alanında uygulama amacını belirtebilirsiniz Veri bağlantısı özelliklerini iletişim kutusu.
Örtük bağlantısı oluşturulduğunda, örtük bağlantısı üst bağlantı kullanma niyet ayarı kullanır. Benzer şekilde, birden çok oturum, aynı veri kaynağından oluşturulmuş veri kaynağının uygulama niyet ayarı devralır.
Ayrıca bkz.
Kavramlar
SQL Server ile yerel istemci bağlantı dizesi anahtar sözcükler kullanma