Skip To Content

Crear una geodatabase en PostgreSQL en AWS

Si crea una instancia de ArcGIS Enterprise on Amazon Web Services (AWS) mediante la AMI de Esri que incluye PostgreSQL, puede crear geodatabases mediante una secuencia de comandos de Python que llama a la herramienta de geoprocesamiento Crear geodatabase corporativa.

Cuando se usa ArcGIS Server Cloud Builder on Amazon Web Services para iniciar la instancia, se crean dos geodatabases corporativas en PostgreSQL. Si desea geodatabases adicionales, por ejemplo, si desea personalizar el nombre o la ubicación de las geodatabases que usa, o si tiene varios departamentos que mantienen sus propios datos discretos y necesitan sus propias geodatabases, puede crearlas.

Cuando se configura de forma manual un sitio con la Consola de administración de AWS, no se crean geodatabases. Si desea usar geodatabases de PostgreSQL con su instancia de ArcGIS Enterprise on Amazon Web Services, debe crearlas.

Para crear una geodatabase de PostgreSQL para usar con su instancia de ArcGIS Enterprise on Amazon Web Services, siga estos pasos:

  1. Realice una conexión SSH a su sitio de ArcGIS Server (SITEHOST).

    Para ello, deberá abrir el puerto SSH (22) del grupo de seguridad.

  2. Copie la siguiente secuencia de comandos y péguela en un editor de texto:
    #Import arcpy module
    import arcpy
    
    arcpy.CreateEnterpriseGeodatabase("PostgreSQL", "<aws instance name>", "<new geodatabase name>", "DATABASE_AUTH", "postgres", "<postgres password>", "", "sde", "<sde password>", "", "/arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License<release>/sysgen/keycodes")
  3. Modifique los valores entre corchetes (<>) para que coincidan con la información de su sitio y guarde el archivo con una extensión .py.
  4. Abra un comando shell y establezca variables de entorno para señalar la secuencia de comandos.
  5. Ejecute la secuencia de comandos para crear la geodatabase.

    Si la información que proporciona es correcta, aparece un mensaje que indica que la geodatabase se creó correctamente. Si recibe un mensaje de error, asegúrese de que la información que proporcionó era correcta (por ejemplo, utilizó las contraseñas correctas y el nombre de la base de datos es válido).

    Sugerencia:

    Verifique el archivo de registro de PostgreSQL en data/pg_log para ver los mensajes de error extendidos.

  6. Ahora tiene una nueva geodatabase. Debe añadir roles de inicio de sesión y esquemas de usuario a la base de datos.

  7. Copie esta secuencia de comandos en un editor de textos para conectarse a la nueva geodatabase y crear un rol de inicio de sesión con un esquema coincidente. Otra opción es especificar un rol de inicio de sesión existente, y en la base de datos se creará un esquema para el mismo.
    #Import arcpy module
    import arcpy
    
    arcpy.CreateDatabaseConnection_management("<path to directory where connection file to be created>", "<connection file name>.sde", "POSTGRESQL", "<aws instance name>", "DATABASE_AUTH", "postgres", "<postgres password>", "<geodatabase name>", "SAVE_USERNAME")
    
    arcpy.CreateDatabaseUser_management("<path to directory with connection file>/<connection file name>.sde", "DB", "<login role name>", "<login password>")
  8. Modifique los valores entre corchetes (<>) para que coincidan con los datos de la base de datos y del rol de inicio de sesión, y guarde el archivo con una extensión .py.

    Por ejemplo, si desea que el rol de inicio de sesión predeterminado creado con ArcGIS Server Cloud Builder on Amazon Web Services (propietario) cree datos en la nueva geodatabase, especifique el rol de inicio de sesión correspondiente en la secuencia de comandos.

  9. Abra un comando shell y establezca variables de entorno para señalar la secuencia de comandos.
  10. Ejecute la secuencia de comandos para crear un rol y un esquema de inicio de sesión (o bien, un esquema para un rol de inicio de sesión existente).

    La secuencia de comandos otorga privilegios de uso del esquema al público.

  11. Repita el paso anterior para cada rol de inicio de sesión que vaya a crear datos en la nueva geodatabase.

Temas relacionados