Server.AffinityInfo プロパティ

SQL Server のインスタンスに関連付けられている AffinityInfo オブジェクトを取得します。

名前空間:  Microsoft.SqlServer.Management.Smo
アセンブリ:  Microsoft.SqlServer.Smo (Microsoft.SqlServer.Smo.dll)

構文

'宣言
<SfcObjectAttribute(SfcObjectRelationship.ChildObject, SfcObjectCardinality.One)> _
Public ReadOnly Property AffinityInfo As AffinityInfo 
    Get
'使用
Dim instance As Server 
Dim value As AffinityInfo 

value = instance.AffinityInfo
[SfcObjectAttribute(SfcObjectRelationship.ChildObject, SfcObjectCardinality.One)]
public AffinityInfo AffinityInfo { get; }
[SfcObjectAttribute(SfcObjectRelationship::ChildObject, SfcObjectCardinality::One)]
public:
property AffinityInfo^ AffinityInfo {
    AffinityInfo^ get ();
}
[<SfcObjectAttribute(SfcObjectRelationship.ChildObject, SfcObjectCardinality.One)>]
member AffinityInfo : AffinityInfo
function get AffinityInfo () : AffinityInfo

プロパティ値

型: Microsoft.SqlServer.Management.Smo.AffinityInfo
指定された SQL Server のインスタンスの AffinityInfo オブジェクトです。

説明

AffinityInfo オブジェクトのプロパティを取得するには、固定サーバー ロール public のメンバーでもかまいません。

任意の AffinityInfo オブジェクト プロパティを設定し、Alter メソッドを実行するには、データベースの ALTER 権限を持っている必要があります。

AffinityInfo オブジェクトを作成するには、親データベースの ALTER ANY APPLICATION ロール権限を持っている必要があります。

AffinityInfo オブジェクトを削除するには、アプリケーション ロールの所有者であるか、親データベースの ALTER ANY APPLICATION ロール権限を持っている必要があります。

AffinityInfo オブジェクトに対する権限の許可、拒否、または取り消しを行うには、アプリケーション ロールの CONTROL 権限を持っている必要があります。

使用例

次の例では、SQL Server のインスタンス上のすべての CPU をハード アフィニティに設定する方法を示します。

Visual Basic

using System;
using Microsoft.SqlServer.Management.Smo;

namespace samples
{
    class Program
    {
        static void Main(string[] args)
        {
            Server dbServer = new Server("(local)");
            dbServer.AffinityInfo.Cpus[1].AffinityMask = true;
            
            dbServer.AffinityInfo.AffinityType = AffinityType.Manual;

            foreach (Cpu cpu in dbServer.AffinityInfo.Cpus)
                cpu.AffinityMask = true;

            dbServer.AffinityInfo.Alter();
        }
    }
}

Powershell

$dbServer = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$dbServer.AffinityInfo.AffinityType = [Microsoft.SqlServer.Management.Smo.AffinityType]'Manual'

foreach ($cpu In $dbServer.AffinityInfo.Cpus)
{
   $cpu.AffinityMask = $True
   $dbServer.AffinityInfo.Alter() 
}

関連項目

参照

Server クラス

Microsoft.SqlServer.Management.Smo 名前空間

その他の技術情報

64 基を超える CPU を搭載したコンピューター上で SQL Server を実行する場合のベスト プラクティス

ALTER SERVER CONFIGURATION (Transact-SQL)