Published on

October 2, 2014

Agregando archivos de base de datos en la replicación de SQL Server

La replicación de base de datos es una característica en SQL Server que permite alta disponibilidad y recuperación ante desastres. Funciona aplicando registros de transacciones desde la base de datos Principal a la base de datos Espejo. Sin embargo, ciertas operaciones, como agregar un nuevo archivo a la base de datos, no se replican automáticamente. En este artículo, discutiremos los pasos para agregar un archivo de base de datos a una base de datos involucrada en la replicación de SQL Server.

Paso 1: Romper la replicación

El primer paso es romper la replicación entre las bases de datos Principal y Espejo. Esto se puede hacer utilizando el siguiente comando:

ALTER DATABASE [USERDB1] SET PARTNER OFF

Paso 2: Agregar nuevo archivo de datos o registro

A continuación, debemos agregar el nuevo archivo de datos o registro a la base de datos. Esto se puede hacer utilizando el siguiente comando:

USE [master]
GO
ALTER DATABASE [UserDB1] ADD FILE (
    NAME = N'UserDB1_1',
    FILENAME = N'H:MSSQL12.INS1MSSQLDATAUserDB1_1.ndf',
    SIZE = 3072KB,
    FILEGROWTH = 1024KB
) TO FILEGROUP [PRIMARY]

Paso 3: Hacer una copia de seguridad del registro de transacciones en el Primario

Antes de continuar, es importante hacer una copia de seguridad del registro de transacciones en la base de datos Primaria. Esto se puede hacer utilizando el siguiente comando:

BACKUP LOG USERDB1 TO DISK = 'C:USERDB1_LOG.TRN'

Paso 4: Restaurar la copia de seguridad del registro de transacciones en el Espejo

Ahora, debemos restaurar la copia de seguridad del registro de transacciones en la base de datos Espejo con la opción Move. Esto se puede hacer utilizando el siguiente comando:

RESTORE LOG [USERDB1] FROM DISK = N'C:USERDB1_LOG.TRN' WITH Move N'UserDB1_1' TO N'I:MSSQL12.SQL14I2MSSQLDATAUserDB1.ndf', NORECOVERY, NOUNLOAD, STATS = 10

Paso 5: Restablecer la replicación de la base de datos

Finalmente, podemos restablecer la replicación de la base de datos. Primero, en la base de datos Espejo, use el siguiente comando:

ALTER DATABASE USERDB1 SET PARTNER = 'TCP://SQL2014.RohitGarg.local.in:5022'

Luego, en la base de datos Principal, use el siguiente comando:

ALTER DATABASE USERDB1 SET PARTNER = 'TCP://SQL2K14_2.RohitGarg.local.in:5022'

Nota: Si las bases de datos Principal y Espejo tienen la misma estructura de archivos, no se necesitan pasos especiales. El archivo se agregará automáticamente a la base de datos Espejo cuando se agregue a la base de datos Principal. Los pasos anteriores solo son válidos para estructuras de archivos diferentes en las bases de datos Principal y Espejo.

Gracias a mi amigo Sachin por señalarme esto.

Referencias:
Rohit Garg (http://mssqlfun.com/)

Puedes encontrar y seguir a MSSQLFUN en varias plataformas:

Otros perfiles vinculados:

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.