Condividi tramite


Implementazione degli endpoint

Un endpoint è un servizio in grado di restare in ascolto in modo nativo per le richieste. SMO supporta diversi tipi di endpoint tramite l'oggetto Endpoint . È possibile creare un servizio endpoint che gestisce un tipo specifico di payload, che usa un protocollo specifico, creando un'istanza di un Endpoint oggetto e impostandone le proprietà.

La EndpointType proprietà dell'oggetto Endpoint può essere utilizzata per specificare i tipi di payload seguenti:

  • Mirroring del Database

  • SOAP (il supporto per gli endpoint SOAP è presente in SQL Server 2008 R2 e versioni precedenti di SQL Server)

  • Intermediario di Servizio

  • Transact-SQL

Inoltre, la ProtocolType proprietà può essere usata per specificare i due protocolli supportati seguenti:

  • Protocollo HTTP

  • Protocollo TCP

Dopo aver specificato il tipo di payload, il payload effettivo può essere impostato usando la proprietà dell'oggetto Payload . La Payload proprietà dell'oggetto fornisce un riferimento a un oggetto payload del tipo specificato, per cui è possibile modificare le proprietà.

Per l'oggetto DatabaseMirroringPayload , è necessario specificare il ruolo di mirroring e se la crittografia è abilitata. L'oggetto richiede informazioni sull'inoltro ServiceBrokerPayload dei messaggi, sul numero massimo di connessioni consentite e sulla modalità di autenticazione. L'oggetto SoapPayloadMethod richiede l'impostazione di varie proprietà, inclusa la Add proprietà dell'oggetto che specifica i metodi di payload SOAP disponibili per i client (stored procedure e funzioni definite dall'utente).

Analogamente, il protocollo effettivo può essere impostato utilizzando la proprietà dell'oggetto Protocol che fa riferimento a un oggetto protocollo del tipo specificato dalla ProtocolType proprietà . L'oggetto HttpProtocol richiede un elenco di indirizzi IP limitati e informazioni su porta, sito Web e autenticazione. L'oggetto TcpProtocol richiede anche un elenco di indirizzi IP limitati e informazioni sulla porta.

Quando l'endpoint è stato creato e completamente definito, l'accesso può essere concesso a, revocato e negato a utenti, gruppi, ruoli e accessi del database.

Esempio

Per l'esempio di codice seguente, è necessario selezionare l'ambiente di programmazione, il modello di programmazione e il linguaggio di programmazione per creare l'applicazione. Per altre informazioni, vedere Creare un progetto SMO di Visual Basic in Visual Studio .NET e Creare un progetto SMO visual C# in Visual Studio .NET.

Creazione di un servizio endpoint del mirroring del database in Visual Basic

Nell'esempio di codice viene illustrato come creare un endpoint del mirroring del database in SMO. Questa operazione è necessaria prima di creare un mirror del database. Utilizzare e IsMirroringEnabled altre proprietà nell'oggetto Database per creare un mirror del database.

Creazione di un servizio endpoint del mirroring del database in Visual C#

Nell'esempio di codice viene illustrato come creare un endpoint del mirroring del database in SMO. Questa operazione è necessaria prima di creare un mirror del database. Utilizzare e IsMirroringEnabled altre proprietà nell'oggetto Database per creare un mirror del 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);  
        }  

Creazione di un servizio endpoint di mirroring del database in PowerShell

Nell'esempio di codice viene illustrato come creare un endpoint del mirroring del database in SMO. Questa operazione è necessaria prima di creare un mirror del database. Utilizzare e IsMirroringEnabled altre proprietà nell'oggetto Database per creare un mirror del 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;  

Vedere anche

Endpoint di mirroring del database (SQL Server)