es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Redirija todas las conexiones hacia la nueva instancia del servidor SQL.

Necesito migrar una base de datos SQL a un nuevo servidor. Todas las aplicaciones acceden al antiguo servidor SQL con una instancia nominada SQLA\InstOld. Ahora, la nueva instancia SQL está en SQLB\InstNew.

No me gusta cambiar todas las aplicaciones/clientes, ya que en el pasado la cadena de conexión estaba codificada en el software. He probado varias configuraciones con alias de SQL y DNS cname, sin éxito.

Cuando utilizo un cname DNS de SQLA a SQLB, puedo acceder a la nueva base de datos con SQLA\InstNew o incluso solo SQLA, ya que “InstNew” es la única instancia por defecto. Pero lo que necesito lograr es tener acceso con SQLA\InstOld a la nueva instancia, para no tener que cambiar las aplicaciones en ejecución. He intentado configurar diferentes alias de SQL, como “InstOld” a “InstNew”, sin éxito.

¿Alguna sugerencia sobre cómo lograr esto?

Gracias,
Michael

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Como experto en TI especializado en SQL Server, migración, alias, CNAME y named-instance, recomiendo los siguientes pasos para migrar su base de datos SQL a un nuevo servidor sin cambiar la cadena de conexión para sus aplicaciones/clientes:

    1. Cree un Alias de SQL Server en el servidor antiguo (SQLA\InstOld) que redirija el tráfico a la nueva instancia de SQL (SQLB\InstNew). Para hacer esto, siga estos pasos:

      a. Abra el Administrador de configuración de SQL Server en el servidor antiguo.

      b. Expanda la Configuración del cliente nativo de SQL Server.

      c. Haga clic derecho en Alias y seleccione Nuevo Alias.

      d. En el campo Nombre del alias, ingrese “InstOld”.

      e. En el campo Número de puerto, ingrese el número de puerto para la nueva instancia de SQL (o déjelo en blanco para el puerto predeterminado).

      f. En el campo Servidor, ingrese el nombre de la nueva instancia de SQL (SQLB\InstNew).

      g. Haga clic en Aceptar para guardar el nuevo alias.

    2. Pruebe el Alias de SQL Server conectándose a la nueva instancia de SQL utilizando el nombre de instancia antiguo (SQLA\InstOld). Para hacer esto, siga estos pasos:

      a. Abra el Administrador de SQL Server en el servidor antiguo.

      b. En el campo Tipo de servidor, seleccione Motor de base de datos.

      c. En el campo Nombre de servidor, ingrese “SQLA\InstOld”.

      d. Haga clic en Conectar para probar la conexión.

      e. Si la conexión es exitosa, debería poder ver la nueva instancia de SQL y sus bases de datos.

    3. Modifique la cadena de conexión para sus aplicaciones/clientes para que utilice el Alias de SQL Server (InstOld). Para hacer esto, siga estos pasos:

      a. Abra el archivo de configuración (por ejemplo, web.config) de su aplicación.

      b. Busque la cadena de conexión que apunta a la instancia antigua de SQL (SQLA\InstOld).

      c. Reemplace el nombre de la instancia antigua con el Alias de SQL Server (InstOld).

      d. Guarde el archivo de configuración.

    4. Pruebe la cadena de conexión ejecutando sus aplicaciones/clientes. Para hacer esto, siga estos pasos:

      a. Inicie su aplicación/cliente.

      b. Realice una operación de base de datos (por ejemplo, select, insert, update, delete).

      c. Si la operación es exitosa, su aplicación/cliente ahora está utilizando la nueva instancia de SQL a través del Alias de SQL Server sin cambiar la cadena de conexión.

    Siguiendo estos pasos, puede migrar su base de datos SQL a un nuevo servidor sin cambiar la cadena de conexión para sus aplicaciones/clientes, utilizando un Alias de SQL Server que redirige el tráfico desde el nombre de la instancia antigua al nombre de la instancia nueva. Espero que esto ayude. Si tiene alguna pregunta adicional, no dude en preguntar. ¡Buena suerte con su migración de SQL!

Comments are closed.