Agregar el tipo ST_Geometry a una base de datos de PostgreSQL
Puede agregar el tipo ST_Geometry, sus subtipos y funciones a la base de datos de PostgreSQL utilizando la herramienta de geoprocesamiento Crear tipo espacial o una secuencia de comandos Python.
La herramienta Crear tipo espacial realiza lo siguiente:
- Crea un inicio de sesión sde en el cluster de base de datos de PostgreSQL
- Otorga los privilegios de superusuario al usuario SDE (se pueden revocar después de crear el tipo ST_Geometry)
- Crea un esquema denominado sde en la base de datos donde usted instala el tipo ST_Geometry
- Otorga al usuario sde plena autoridad en el esquema sde
- Otorga privilegios USAGE en el esquema sde al grupo de inicio de sesión público (si lo desea, puede revocar este privilegio, pero debe otorgar USAGE en el esquema sde a todos los usuarios que necesiten acceder al tipo ST_Geometry, a los subtipos o a las funciones).
- Crea las funciones, dominios, tablas (sde_coordinate_systems y sde_geometry_columns) y vistas (st_geometry_columns y st_spatial_references) necesarias en el esquema sde, y la tabla sde_spatial_references en el esquema público
Antes de ejecutar la herramienta, debe copiar la biblioteca geometría_st en el servidor de PostgreSQL.
En los siguientes pasos se explica cómo instalar el tipo ST_Geometry en una base de datos de PostgreSQL:
- Copie la biblioteca st_geometry del directorio DatabaseSupport en la ubicación de instalación de cliente ArcGIS y colóquela en el directorio lib de PostgreSQL. Asegúrese de copiar la biblioteca st_geometry correcta para las versiones de PostgreSQL y sistema operativo que vaya a utilizar.
- La ubicación del directorio lib en Linux 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. El valor que se devuelve para PKGLIBDIR es el directorio lib donde es necesario colocar la biblioteca st_geometry. Inicie sesión como usuario raíz para copiar el archivo en la ubicación lib.
- Si PostgreSQL está instalado en un servidor de Windows, coloque el archivo st_geometry.dll en el directorio %PostgreSQL%\lib.
- Si tiene PostgreSQL instalado en un servidor de Windows, debe tener el paquete redistribuible de Microsoft Visual C++ 2008 SP1 (x64) instalado en el servidor. Si no está presente en el servidor de PostgreSQL, descárguelo desde el sitio Web de Microsoft e instálelo.
Esto es necesario para utilizar el tipo ST_Geometry.
- Inicie ArcCatalog o ArcMap y abra la ventana Catálogo.
- Crear una conexión a su base de datos de PostgreSQL. Inicie sesión como usuario de Postgre.
- Abra la herramienta Crear tipo espacial .
Puede utilizar la ventana Buscar para buscar la herramienta o abrir la herramienta desde el conjunto de herramientas Espacio de trabajo de la caja de herramientas Administración de datos.
- Agregue la conexión de la base de datos que creó en el paso 4 al cuadro de texto del espacio de trabajo de la base de datos de entrada .
- Escriba una contraseña para el usuario sde en el cuadro de texto Contraseña de usuario SDE.
- Deje el cuadro de texto Nombre del espacio de tabla en blanco.
- Haga clic en el botón Aceptar para ejecutar la herramienta.
El tipo ST_Geometry, sus subtipos y funciones se crean en el esquema del usuario sde.