none
Compilar Store Procedure con links a servidores sin conexion RRS feed

  • Pregunta

  • Buenas tardes,

    Mi duda es la siguiente:

    Tengo un Store Procedure que tiene varios links a varios servidores.

    En este momento tengo un servidor abajo (falla en la conexión ) y modifique dicho store procedure pero al compilarlo me manda los errores:

    El proveedor OLE DB "SQLNCLI10" del servidor vinculado "xxxxx" devolvió el mensaje "Login timeout expired".
    El proveedor OLE DB "SQLNCLI10" del servidor vinculado "xxxxx" devolvió el mensaje "A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online.".

    Si comento las líneas del servidor caido el store procedure compila sin problemas.

    La pregunta es: ¿ Existe alguna forma de compilar este store procedure sin tener que comentar las líneas del servidor que no se encuentra en línea?

    Gracias.

    Saludos.

    jueves, 13 de junio de 2019 17:28

Todas las respuestas

  • No he probado esto, pero en principio deberia funcionar:

    Si tienes un SQL Server razonablemente moderno, podrias usar unos alias para las tablas del servidor vinculado (creados con CREATE SYNONYM), y en el procedimiento almacenado usar los sinonimos en lugar de los nombres de cuatro partes.

    Si el servidor remoto no tiene conexion, puedes modificar los sinonimos para que apunten a tablas locales con el mismo esquema que las remotas. Entonces salvas el procedimiento almacenado. Despues, vuelves a cambiar los sinonimos para que apunten a los servidores remotos.

    Obviamente el procedimiento no se podra ejecutar mienttras no tengas conexion a los servidores remotos. Una vez que esten en linea, puedes ejecutar el procedimiento con la opcion "with recompile" o llamar a sp_recompile antes de ejecutarlo, para que se optimice correctamente con las tablas reales.

    • Propuesto como respuesta Carlos_Ruiz_M lunes, 17 de junio de 2019 14:55
    viernes, 14 de junio de 2019 9:40