適用対象:SQL Server
この記事では、SQL Server 構成マネージャーを使用して、TCP/IP ポートを非均一メモリ アクセス (NUMA) ノードにマップする方法について説明します。 データベース エンジン では、起動時にノード情報をエラー ログに書き込みます。
使用するノードのノード番号を確認するには、エラー ログまたは sys.dm_os_schedulers ビューからノード情報を読み取ります。 1 つのノードまたは複数のノードに対して TCP/IP アドレスとポートを設定するには、ポート番号の後に、ノード ID ビットマップ (関係マスク) を角かっこで囲んで追加します。 ノードは、10 進数形式または 16 進数形式で指定できます。 ビットマップを作成するには、ノードに対して右から左に、76543210 のように 0 から番号を付けます。 ノード リストのバイナリ表現を作成し、使用するノードに 1、使用しないノードに 0 を指定します。 たとえば、NUMA ノード 0、2、5 を使用するには、 00100101を指定します。
NUMA node number 76543210
Mask for 0, 2, and 5 counting from right 00100101
バイナリ表現 (00100101) を 10 進 [37]または 16 進数の [0x25]に変換します。 すべてのノードでリッスンするには、ノード識別子を指定しません。
ポートが複数の NUMA ノードにマッピングされている場合、 SQL Server はノード間での負荷分散を試行することなくラウンド ロビン方式でノードに接続を割り当てます。
Note
SQL Server が IP アドレスごとに複数の TCP ポートをリッスンできるようにするには、「複数の TCP ポートでリッスンするようにデータベース エンジンを構成する」を参照してください。
SQL Server 構成マネージャーを使用する
SQL Server 構成マネージャーで、[SQL Server ネットワーク構成] を展開し、[プロトコルの名前<>を選択します。
詳細ペインで、 [TCP/IP] をダブルクリックします。
[IP アドレス] タブで、構成する IP アドレスに対応するセクションの [TCP ポート] ボックスで、ポート番号の後に NUMA ノード識別子を角かっこで囲んで追加します。 たとえば、TCP ポート 1500 とノード 0、2、5 の場合は、
1500[37]または1500[0x25]を使用します。