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


Реализация конечных точек

Конечная точка — это служба, которая может прослушивать запросы в собственном коде. SMO поддерживает различные типы конечных точек с помощью Endpoint объекта. Вы можете создать службу конечной точки, которая обрабатывает определенный тип полезных данных, который использует определенный протокол, создав экземпляр Endpoint объекта и задав его свойства.

Свойство EndpointTypeEndpoint объекта можно использовать для указания следующих типов полезных данных:

  • Зеркалирование базы данных

  • SOAP (поддержка конечных точек SOAP присутствует в SQL Server 2008 R2 и более ранних версиях SQL Server).

  • Сервисный брокер

  • Transact-SQL

Кроме того, ProtocolType свойство можно использовать для указания следующих двух поддерживаемых протоколов:

  • Протокол HTTP

  • Протокол TCP.

Указав тип полезных данных, фактические полезные данные можно задать с помощью Payload свойства объекта. Свойство Payload объекта предоставляет ссылку на объект полезных данных указанного типа, для которого можно изменить свойства.

DatabaseMirroringPayload Для объекта необходимо указать роль зеркального отображения и включить ли шифрование. Объекту ServiceBrokerPayload требуются сведения о переадресации сообщений, максимально допустимом количестве подключений и режиме проверки подлинности. Объекту SoapPayloadMethod требуется задать различные свойства, включая Add свойство объекта, указывающее методы полезных данных SOAP, доступные клиентам (хранимые процедуры и определяемые пользователем функции).

Аналогичным образом фактический протокол можно задать с помощью Protocol свойства объекта, ссылающегося на объект протокола типа, указанного свойством ProtocolType . Для HttpProtocol объекта требуется список ограниченных IP-адресов, а также сведения о портах, веб-сайте и проверке подлинности. Для TcpProtocol объекта также требуется список ограниченных IP-адресов и сведений о портах.

Когда конечная точка создана и полностью определена, доступ можно предоставить, отозвать и запретить пользователям базы данных, группам, ролям и входам.

Пример

В следующем примере кода необходимо выбрать среду программирования, шаблон программирования и язык программирования для создания приложения. Дополнительные сведения см. в статье "Создание проекта SMO Visual Basic в Visual Studio .NET " и создание проекта SMO Visual C# в Visual Studio .NET.

Создание службы конечной точки зеркального отображения базы данных в Visual Basic

В примере кода показано, как создать конечную точку зеркального отображения базы данных в SMO. Это необходимо перед созданием зеркального отображения базы данных. IsMirroringEnabled Используйте другие свойства Database объекта для создания зеркального отображения базы данных.

Создание службы конечных точек зеркального отображения базы данных в Visual C#

В примере кода показано, как создать конечную точку зеркального отображения базы данных в SMO. Это необходимо перед созданием зеркального отображения базы данных. IsMirroringEnabled Используйте другие свойства Database объекта для создания зеркального отображения базы данных.

{  
            //Set up a database mirroring endpoint on the server before   
        //setting up a database mirror.   
        //Connect to the local, default instance of SQL Server.   
            Server srv = new Server();  
            //Define an Endpoint object variable for database mirroring.   
            Endpoint ep = default(Endpoint);  
            ep = new Endpoint(srv, "Mirroring_Endpoint");  
            ep.ProtocolType = ProtocolType.Tcp;  
            ep.EndpointType = EndpointType.DatabaseMirroring;  
            //Specify the protocol ports.   
            ep.Protocol.Http.SslPort = 5024;  
            ep.Protocol.Tcp.ListenerPort = 6666;  
            //Specify the role of the payload.   
            ep.Payload.DatabaseMirroring.ServerMirroringRole = ServerMirroringRole.All;  
            //Create the endpoint on the instance of SQL Server.   
            ep.Create();  
            //Start the endpoint.   
            ep.Start();  
            Console.WriteLine(ep.EndpointState);  
        }  

Создание службы конечной точки зеркального отображения базы данных в PowerShell

В примере кода показано, как создать конечную точку зеркального отображения базы данных в SMO. Это необходимо перед созданием зеркального отображения базы данных. IsMirroringEnabled Используйте другие свойства Database объекта для создания зеркального отображения базы данных.

# Set the path context to the local, default instance of SQL Server.  
CD \sql\localhost\  
$srv = Get-Item default  
  
#Get a new endpoint to congure and add  
$ep = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Endpoint -argumentlist $srv,"Mirroring_Endpoint"  
  
#Set some properties  
$ep.ProtocolType = [Microsoft.SqlServer.Management.SMO.ProtocolType]::Tcp  
$ep.EndpointType = [Microsoft.SqlServer.Management.SMO.EndpointType]::DatabaseMirroring  
$ep.Protocol.Http.SslPort = 5024  
$ep.Protocol.Tcp.ListenerPort = 6666 #inline comment  
$ep.Payload.DatabaseMirroring.ServerMirroringRole = [Microsoft.SqlServer.Management.SMO.ServerMirroringRole]::All  
  
# Create the endpoint on the instance  
$ep.Create()  
  
# Start the endpoint  
$ep.Start()  
  
# Report its state  
$ep.EndpointState;  

См. также

Конечная точка зеркального отображения базы данных (SQL Server)