El uso de una base de datos de Microsoft SQL Server de alta disponibilidad para los datos de servicio de ArcGIS puede evitar el tiempo de inactividad de sus servicios.
SQL Server ofrece varias soluciones de alta disponibilidad. ArcGIS admite las conexiones a los tipos siguientes:
- Grupos de disponibilidad e Instancias del clúster de conmutación por error AlwaysOn
- Espejo de la base de datos
Microsoft ha dejado de utilizar el espejo de la base de datos. Si utiliza SQL Server 2012 o una versión posterior, debe usar una solución AlwaysOn en lugar del espejo.
En las secciones siguientes se explica qué información debe proporcionar para conectarse desde ArcGIS a bases de datos de SQL Server de alta disponibilidad:
Grupos de disponibilidad e Instancias del clúster de conmutación por error AlwaysOn
Una Instancia del clúster de conmutación por error proporciona una instancia de SQL Server redundante a la que pueden conectarse los clientes en caso de fallar una instancia. Los Grupos de disponibilidad permiten especificar un conjunto de bases de datos principales y hasta cuatro conjuntos de bases de datos secundarias de solo lectura se distribuyen por las Instancias del clúster de conmutación por error. Asegúrese de leer la documentación sobre AlwaysOn de SQL Server en Microsoft Developer Network antes de implementar esta solución.
Una vez que tenga su solución AlwaysOn, podrá conectarse a ella desde ArcGIS especificando el nombre de agente de escucha de los grupos de disponibilidad en lugar del nombre de instancia de SQL Server. Puede incorporar condiciones adicionales al agente de escucha de los grupos separando el nombre de agente de escucha de los grupos y cada parámetro con punto y coma (;). Puede agregar las siguientes condiciones:
- APPLICATIONINTENT=READONLY o APPLICATIONINTENT=READWRITE
- MULTISUBNETFAILOVER=YES o MULTISUBNETFAILOVER=NO
Si no especifica valores para APPLICATIONINTENT y MULTISUBNETFAILOVER, los valores predeterminados serán READWRITE y NO, respectivamente.
En el siguiente ejemplo, se realiza una conexión a una base de datos secundaria de solo lectura a través del agente de escucha de los grupos org_agl.
Espejo de la base de datos
Si utiliza el espejo de la base de datos en SQL Server, puede proporcionar la información de conexión de las conexiones de servidor principal y de espejo correspondientes a los datos de origen usados por sus servicios. Esto se indica en el formato <principal>;MIRROR=<mirror>.
Si el servidor principal deja de estar disponible, ArcGIS for Server vuelve a intentar la conexión automáticamente. En ese momento, si el servidor de espejo está disponible, la conexión del servicio cambia a utilizar los datos en el servidor de espejo.
Diferentes escenarios para especificar un espejo de datos se describen en las siguientes secciones:
Los equipos de edición y servidor utilizan la misma base de datos
Si el recurso SIG que comparte como un servicio utiliza la misma base de datos que el servicio publicado, y esa base de datos se refleja, proporcione información tanto para el servidor principal como el de espejo en el campo Instancia de la conexión de base de datos compartida.
Por ejemplo, si crea una conexión en el cuadro de diálogo Conexión de base de datos de ArcGIS for Desktop, su servidor principal es oak\prod, su espejo es oak2\echo y las bases de datos son datasquared, la conexión será de la siguiente manera:
Los equipos de edición y servidor utilizan diferentes bases de datos
Si su recurso SIG y su servicio publicado hará usarán diferentes bases de datos para sus datos de origen (ya sea las geodatabases replicadas o una base de datos administrada), usted tendrá dos conexiones de base de datos definidas. Para garantizar la disponibilidad del servicio, asegúrese de que el archivo de conexión definido por el editor usa la sintaxis de espejo descrita anteriormente.
Por ejemplo, si su servicio de entidad de punto a datos que se copia a su base de datos administrada gisdata, que está en el servidor willow y su espejo en el servidor cottonwood, su conexión de geodatabase registrada se verá similar a lo siguiente:
Ya que este ejemplo utiliza instancias predeterminadas de SQL Server, puede proporcionar la dirección IP para cada servidor en lugar del nombre de la instancia de SQL Server. Por ejemplo, si la dirección IP para willow es 10.10.100.10 y la dirección IP para cottonwood es 11.11.111.11, escriba 10.10.100.10;MIRROR= 11.11.111.11 en el cuadro de textoInstancia. Si ninguna de las instancias de SQL Server está escuchando en un puerto diferente al puerto del motor de base de datos predeterminado de 1433, incluya el número de puerto en la información de conexión. Por ejemplo, si la instancia willow está en línea en el puerto 50000, escriba 10.10.100.10:50000;MIRROR= 11.11.111.11 en el cuadro de texto Instancia.