DB Mirroring copia todos los objetos de la base de datos del servidor principal al mirror server (servidor espejo o replicado).
De todos modos, esto no copia los inicios de sesión (o logins) del servidor principal al mirror o espejo, y esto comporta que después del failover no se pueda conectar a la base de datos del mirror server.

Para resolver este problema necesitamos conocer el SID del login en el servidor principal.
Cuando sepamos el SID del login, podemos crear un nuevo login en el mirror server utilizando este SID.

Para conocer el SID del login del server principal debemos ejecutar la siguiente sentencia en el servidor principal:

SELECT sid  FROM sys.server_principals where name = ‘<LoginName>’

Para crear el login en el mirror server utilizando el SID del servidor principal, podemos ejecutar la siguiente sentencia en el servidor espejo (mirror server):

CREATE LOGIN <LoginName> WITH PASSWORD = ‘<Paswword>’ sid = <sid for same login on principal server>

Recuerde que el <LoginName>, el <Password> y el <SID de login en el servidor principal> deben ser exactamente los mismos en ambos servidores: principal (main) y espejo (mirror).

Finalmente se debe cambiar la cadena de conexión de la aplicación incluyendo el parámetro de “failover partner”:

Data Source=myServerAddress;
Failover Partner=myMirrorServerAddress;

Initial Catalog=myDataBase;
User Id=sqluser;
Password=sqlpassword;

TAGS: how-to

speech-bubble-13-icon Created with Sketch.
Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

*
*