2016-09-28 7 views
1

Always Onクラスタに2つのSQL Serverレプリカがあり、パフォーマンスの問題をテストしたところ、プライマリのみが動作していることがわかりました(読み書き)。高可用性レプリカでの読み取り専用インテントSQLサーバー2014

プライマリが読み取り専用に設定され、セカンダリが読み取り専用のインテントに設定されている場合、書き込みクエリがプライマリに送信される間に、単純な選択クエリをセカンダリレプリカに送信します。

2つの異なる接続文字列を持つ2つの異なるサービスを2つのケース(2つ目は読み取り専用、2つ目は読み取り専用)にすることなく、設定する方法があります。

+2

いいえ、そうではありません。お望みのものではありません。その理由は、レプリカを混在させると[結果が一貫しない](http://stackoverflow.com/questions/39573960/dirty-reads-in-sql-server-alwayson)になる可能性があるからです。もしあなたが本当にこれを望んでいたとしても、エンジンはサーバに行く前にどのクエリが「書き込みクエリ」であるのかを検出することができないので、あなたのサービスは依然として区別する必要があります。 1つのサービスと1つの接続文字列で変更できますが、2つの接続が必要です。 –

答えて

1

いいえ、可用性グループの読み取り専用と読み取り/書き込みの区別は、接続レベルで発生します。接続を読み取り専用レプリカにするには、接続文字列のApplicationIntent = ReadOnlyを使用します。

関連する問題