Поделиться через


Свойство Server.AffinityInfo

Gets the AffinityInfo object that is associated with an instance of SQL Server.

Пространство имен:  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
The AffinityInfo object for specified instance of SQL Server.

Замечания

To get AffinityInfo object properties, users can be a member of the public fixed server role.

To set any AffinityInfo object properties and run the Alter method, users must have ALTER permission on the database.

To create a AffinityInfo object, users must have ALTER ANY APPLICATION role permission on the parent database.

To drop an AffinityInfo object, users must be the owner of the application role or have ALTER ANY APPLICATION role permission on the parent database.

To grant, deny, and revoke permission on the AffinityInfo object, users must have CONTROL permission on the application role.

Примеры

The following example shows how to set all the CPUs on an instance of SQL Server to hard affinity.

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

Другие ресурсы

Рекомендации по использованию SQL Server на компьютерах, которые имеют более 64 процессоров

ALTER SERVER CONFIGURATION (Transact-SQL)