Configurar una geodatabase en PostgreSQL
Este tema se aplica a ArcGIS for Desktop Standard y ArcGIS for Desktop Advanced exclusivamente.
Utilice la herramienta de geoprocesamiento Crear geodatabase corporativa,la herramienta de geoprocesamiento Habilitar geodatabase corporativao una secuencia de comandos de Python para crear una geodatabase en un sistema de administración de base de datos de PostgreSQL (DBMS).
En la mayoría de los casos, puede utilizar la herramienta de geoprocesamiento Crear geodatabase corporativa o una secuencia de comandos de Python para crear una geodatabase en PostgreSQL.
La herramienta Crear geodatabase corporativa crea una base de datos PostgreSQL utilizando la plantilla predeterminada; crea un inicio de sesión sde de rol y el esquema; concede los privilegios de rol de inicio de sesión sde para crear una geodatabase; y crea una geodatabase. Si desea utilizar una plantilla diferente para crear la base de datos, cree la base de datos en el cluster de la base de datos primero y, a continuación, ejecute la herramienta Crear geodatabase corporativa o secuencia de comandos, especificando el nombre de la base de datos creada.
La única razón común para ejecutar la herramienta de geoprocesamiento Habilitar geodatabase corporativa o secuencia de comandos para crear una geodatabase en PostgreSQL es si la persona que ha creado la geodatabase no tiene acceso a la contraseña de superusuario postgres. En ese caso, el administrador de la base de datos puede crear el rol de inicio de sesión sde, la base de datos y el esquema sde y otorgar al usuario sde los privilegios necesarios para crear una geodatabase. Después, el usuario sde se puede conectar a la base de datos y habilitar la funcionalidad de la geodatabase en él utilizando la herramienta de geoprocesamiento Habilitar geodatabase corporativa o secuencia de comandos.
Verifique los requisitos del sistema en el Resource Center antes de configurar una geodatabase para asegurarse de que la base de datos, ArcGIS y las combinaciones de hardware que desea utilizar son compatibles.
Configurar una geodatabase en PostgreSQL en un servidor Linux
A continuación se presenta un resumen de los pasos necesarios para crear una geodatabase en PostgreSQL en Linux:
- Obtenga e instale una versión compatible de PostgreSQL y configure el cluster de la base de datos.
Puede descargar las instalaciones de PostgreSQL desde el portal de atención al cliente de Esri. Si utiliza esta instalación, no es necesaria ninguna configuración específica no predeterminada para utilizar PostgreSQL con ArcGIS. Solo asegúrese de cambiar la configuración regional y la ubicación si desea utilizar un valor diferente al predeterminado.
Como alternativa, puede obtener la instalación de PostgreSQL por su cuenta. Consulte la documentación en el sitio Web PostgreSQL para obtener instrucciones sobre la instalación y configuración de PostgreSQL.
- Configure el cluster de la base de datos para aceptar las conexiones.
Esto incluye modificar el archivo pg_hba.conf para permitir que el clúster de bases de datos acepte conexiones remotas.
- Establezca las siguientes variables de entorno para el usuario postgres si no están ya establecidas correctamente:
- PGDATA: este se debería haber establecido con la instalación de PostgreSQL. Si no, establézcalo en la ubicación del directorio de datos dentro del directorio de instalación de PostgreSQL.
- LD_LIBRARY_PATH: establezca la variable LD_LIBRARY_PATH en el directorio lib de PostgreSQL. La ubicación del directorio lib puede variar en función de cómo haya instalado PostgreSQL. Para determinar la ubicación correcta para la instalación de PostgreSQL, ejecute pg_config como usuario de postgre. Establecer LD_LIBRARY_PATH en el valor que se muestra para PKGLIBDIR.
- PATH: establezca la variable PATH para que contenga postgresql/bin.
- Instale el cliente de ArcGIS desde el cual creará la geodatabase.
- Descargue las bibliotecas del cliente PostgreSQL (si el cliente de ArcGIS está en Windows) o RPM (si el cliente de ArcGIS está en Linux) desde el portal de atención al cliente de Esri y colóquelo en el directorio bin del cliente de ArcGIS que instaló en el último paso. Véase Configurar una conexión a PostgreSQL para obtener más información.
- Si utiliza ArcGIS for Server con la geodatabase de PostgreSQL, establezca las siguientes variables para la cuenta de ArcGIS:
- SDEHOME: configure esta variable en /home/ags/arcgis/server.
exportar SDEHOME=/home/ags/arcgis/server
- PG_HOME: establezca PG_HOME en /opt/PostgreSQL/9.0.
exportar PG_HOME=/opt/PostgreSQL/9.0
- PATH: agregue $PATH:$PG_HOME/bin:$SDEHOME/bin a la variable PATH.
exportar PATH=$PATH $PG_HOME/bin: $SDEHOME/bin:
- LD_LIBRARY_PATH: agregue $LD_LIBRARY_PATH:$PG_HOME/lib:$SDEHOME/lib a la variable LD_LIBRARY_PATH.
exportar LD_LIBRARY_PATH=$LD_LIBRARY_PATH $PG_HOME/lib: $SDEHOME/lib:
- SDEHOME: configure esta variable en /home/ags/arcgis/server.
- Copiar la biblioteca st_geometry en el directorio de instalación de PostgreSQL.
La biblioteca st_geometry para PostgreSQL 9.0 se puede encontrar en el directorio DatabaseSupport/PostgreSQL/Linux64 del directorio de instalación de su cliente de ArcGIS. Mueva el archivo desde esta ubicación del cliente de ArcGIS, inicie sesión en el servidor de PostgreSQL como usuario raíz, y coloque el archivo st_geometry.so en el directorio lib de PostgreSQL. (Esta es la misma ubicación en la que estableció la variable de entorno LD_LIBRARY_PATH.)
Desde el Service Pack 1 de la versión 10.1 de ArcGIS, el directorio DatabaseSupport contiene un directorio llamado 9.1. Si se va a conectar a la base de datos de PostgreSQL 9.1, use la biblioteca st_geometry.so que se encuentra en este directorio en su lugar.
Si no coloca la biblioteca st_geometry.so correcta en el directorio lib de PostgreSQL, no podrá crear una geodatabase.
Precaución:
El directorio DatabaseSupport ArcGIS for Server se crea con permisos establecidos a 700. Cuando inicia sesión como raíz para mover el archivo st_geometry.so al directorio lib de PostgreSQL, cambie los permisos en el archivo a 755. Si no lo hace, el usuario postgres no podrá acceder a él para crear una geodatabase.
- Cree un espacio de tabla en el cluster de la base de datos en la que almacenó su base de datos. Si no crea un espacio de tabla, se utilizará el espacio de tabla pg_default.
- Cree una base de datos, esquema y usuario de sde y geodatabase al realizar cualquiera de las siguientes opciones:
- Ejecute la herramienta de geoprocesamiento Crear geodatabase corporativa de ArcGIS for Desktop (Standard o Advanced) en un equipo con Windows remoto.
- Ejecute una secuencia de comandos de Python desde un equipo que ejecute ArcGIS for Desktop (Standard o Advanced), ArcGIS Engine con la extensión Geodatabase Update, o ArcGIS for Server Enterprise (Standard or Advanced). Se puede copiar un ejemplo de la secuencia de comandos desde la creación una base de secuencias de comandos en PostgreSQL y modificarla para ejecutarla en su sitio.
De manera alternativa, puede crear una base de datos, un usuario sde y un esquema de forma manual y, a continuación, ejecutar la herramienta de geoprocesamiento Habilitar geodatabase corporativa desde un equipo con Windows remoto o ejecutar una secuencia de comandos de Python que utilice EnableEnterpriseGeodatabase en el equipo Linux donde están instalados ArcGIS Engine con la extensión Geodatabase Update o ArcGIS for Server Enterprise (Standard o Advanced).
Configurar una geodatabase de PostgreSQL en un servidor Windows
A continuación se presenta un resumen de los pasos necesarios para crear una geodatabase de PostgreSQL en Windows:
- Obtenga e instale una versión compatible de PostgreSQL y configure el cluster de la base de datos.
Puede descargar las instalaciones de PostgreSQL desde el Portal de atención al cliente de Esri. Si utiliza esta instalación, no es necesaria ninguna configuración específica no predeterminada para utilizar PostgreSQL con ArcGIS. Solo asegúrese de cambiar la configuración regional y la ubicación si desea utilizar un valor diferente al predeterminado.
Como alternativa, puede obtener la instalación de PostgreSQL por su cuenta. Consulte la documentación en el sitio Web PostgreSQL para obtener instrucciones sobre la instalación y configuración de PostgreSQL.
- Configure el cluster de la base de datos para aceptar las conexiones.
Esto incluye modificar el archivo pg_hba.conf para permitir que el clúster de bases de datos acepte conexiones remotas.
- Instale el cliente de ArcGIS desde el cual creará la geodatabase.
- Descargue las bibliotecas del cliente PostgreSQL (si el cliente de ArcGIS está en Windows) o RPM (si el cliente de ArcGIS está en Linux) desde el portal de atención al cliente de Esri y colóquelo en el directorio bin del cliente de ArcGIS que instaló en el último paso. Véase Configurar una conexión a PostgreSQL para obtener más información.
- Copie la biblioteca st_geometry al directorio de instalación de PostgreSQL.
La biblioteca st_geometry.dll que se usa con PostgreSQL 9.0 se puede encontrar en el directorio DatabaseSupport del directorio de instalación de su cliente de ArcGIS. Mueva el archivo st_geometry.dll desde el cliente de ArcGIS al directorio lib de PostgreSQL en su servidor PostgreSQL.
Desde el Service Pack 1 de la versión 10.1 de ArcGIS, el directorio DatabaseSupport contiene un directorio llamado 9.1. Si se va a conectar a la base de datos de PostgreSQL 9.1, use la biblioteca st_geometry.dll que se encuentra en este directorio en su lugar.
Nota:
Si no coloca la biblioteca st_geometry.dll correcta en la carpeta lib de PostgreSQL, no podrá crear una geodatabase.
- Cree un espacio de tabla en el cluster de la base de datos en la que almacenó su base de datos. Si no crea un espacio de tabla, se utilizará el espacio de tabla pg_default.
- Cree una base de datos, esquema y usuario de sde y geodatabase al realizar cualquiera de las siguientes opciones:
- Ejecute la herramienta de geoprocesamiento Crear geodatabase corporativa desde ArcGIS for Desktop (Standard)
- Ejecute una secuencia de comandos de Python desde un equipo que ejecute ArcGIS for Desktop (Standard o Advanced), ArcGIS Engine con la extensión Geodatabase Update, o ArcGIS for Server Enterprise (Standard or Advanced). Se puede copiar un ejemplo de la secuencia de comandos desde la creación una base de secuencias de comandos en PostgreSQL y modificarla para ejecutarla en su sitio.
Alternativamente, puede crear manualmente una base de datos, un usuario sde y un esquema y, a continuación, ejecutar la herramienta de geoprocesamiento Habilitar geodatabase corporativa o la secuencia de comandos de Python para crear una geodatabase en la base de datos creada.
Configuración adicional opcional
Existen algunos escenarios que requieren que utilice herramientas adicionales para completar su configuración de geodatabase, tales como cuando desea utilizar un servicio de ArcSDE para conexiones o varias geodatabases necesarias en la misma base de datos de PostgreSQL. Consulte Varias geodatabases en PostgreSQL para obtener información sobre la creación de más de una geodatabase en el mismo cluster de base de datos.
Para utilizar un servicio ArcSDE, debe instalar y configurar el servidor de aplicación ArcSDE. Consulte la guía de instalación provista con el servidor de aplicaciones de ArcSDE para obtener más instrucciones de este escenario. La instalación del servidor de la aplicación ArcSDE se puede descargar del Portal de atención al cliente de Esri.