Вы находитесь на странице: 1из 14

|   



 


` For database mirroring, a server instance requires its


own, dedicated database mirroring endpoint.This
endpoint is a special-purpose endpoint used
exclusively to receive database mirroring connections
from other server instances.

` Database mirroring endpoints use TCP to send and


receive messages between the server instances in
database mirroring sessions. Each database mirroring
endpoint listens on a unique TCP port number.
|    

 

` ½y default, an instance of SQL Server does not
contain a database mirroring endpoint.These must be
created manually as part of setting up a database
mirroring session. The system administrator must
create a separate endpoint in each server instance
that is to participate in database mirroring.
CREATE ENDPOINT AughtFiveDagobahMirror
AUTHORIZATION SA
STATE=STARTED
AS TCP (LISTENER_PORT = 5022, LISTENER_IP
= ALL)

FOR DATA_MIRRORING
(ROLE = PARTNER,
AUTHENTICATION = WINDOWS
NEGOTIATE
,ENCRYPTION = REQUIRED ALGORITHM
RC4);



` In database mirroring, an originating SQL Server 2005


instance continuously sends a database's transaction
log records to a copy of the database on another
standby SQL Server instance. The originating database
and server have the role of O O, and the receiving
database and server have the role of   . The
principal and mirror servers must be separate
instances of SQL Server 2005.


` In all SQL Server databases, data changes are
recorded in the transaction log before any changes to
actual data pages are made. The transaction log
records are placed first in a database's 
in
memory, and then flushed to disk.

` In database mirroring, as the principal server writes


the principal database's log buffer to disk, it
simultaneously sends that block of log records to the
mirror instance.
Ô 
` The process of sending and receiving asynchronous
messages by different processes in SQL Server 2005 is
enabled by the Service ½roker. The Transact SQL Data
Manipulation Language is used to the send messages to a
queue in the database of the sender or to another
database in the SQL Server instance, or another server
instance or remote server.

` Conceptually the process involves queues, dialogs,


conversations groups and activation.
ë  

` A queue is an object that holds the messages for the


service. It is defined in the CREATE QUEUE statement.

` The syntax would be as under:

CREATE QUEUE studentmsgqueue


| 

` Dialogs are implemented as bidirectional streams of


messages between two endpoints. The messages in a
dialog are ordered and delivered in the order of dispatch.
This order is not disturbed across transactions, inputs,
threads, or crashes and restarts. This is a unique feature of
the Service ½roker.
  

` Dialogs are grouped in accordance with the task they


have to perform. Service ½roker provides a way of
grouping all the dialogs that are used for a particular task.
This grouping is provided by conversation groups
implemented by the conversation group identifier which
is included in the messages.
0   

` You use the activation feature of Service ½roker to specify a


stored procedure that will handle messages destined for a
particular service. When messages arrive for a service, Service
½roker checks whether there is a stored procedure running
that can process the messages. If there isn't a running message-
processing stored procedure, Service ½roker starts one.

` The stored procedure then processes messages until the


queue is empty, after which it terminates.
Moreover, if Service ½roker determines that messages are arriving
faster than the stored procedure can process them, it starts
additional instances of the stored procedure until enough are
running to keep up with the incoming messages. This ensures that
the right number of resources for processing incoming messages
are always available.

Queues enable the flexible scheduling of work, which can


translate to big improvements in both performance and scalability.
A Service ½roker endpoint listens on a specific TCP
port number.

½y default, an instance of SQL Server does not


contain a Service ½roker endpoint.Thus, Service
½roker does not send or receive messages over the
network by default.

You must create a Service ½roker endpoint to send


or receive messages outside the SQL Server
instance.
USE Master;
CREATE ENDPOINT MyEndpoint
STATE = STARTED
AS TCP ( LISTENER_PORT = 50001 )
FOR SERVICE_½ROKER ( AUTHENTICATION =
WINDOWS );
Ô 

` A critically important aspect of all endpoints is securing
them so that only connections that are authorized can
enumerate and call the Web methods or other services
that the endpoint provides.

` The key permission for endpoints is the CONNECT


permission. Only those logins that have been explicitly
granted the CONNECT permission will be able to
expose the functionality behind the endpoint.

Вам также может понравиться