Skip To Content

Créer des géodatabases dans PostgreSQL sur AWS

Si vous avez créé une instance ArcGIS Server on Amazon Web Services (AWS) à l'aide de l'image AMI d'Esri qui inclut PostgreSQL, vous pouvez créer des géodatabases avec un script Python qui appelle l'outil de géotraitement Créer une géodatabase d'entreprise.

Lorsque vous utilisez ArcGIS Server Cloud Builder on Amazon Web Services pour lancer votre instance, deux géodatabases d'entreprise sont créées dans PostgreSQL. Si vous souhaitez des géodatabases supplémentaires (par exemple, si vous voulez personnaliser le nom ou l'emplacement des géodatabases que vous utilisez ou si vous avez plusieurs services qui gèrent leurs propres données discrètes et qui ont besoin de leurs propres géodatabases), vous pouvez créer des géodatabases supplémentaires.

Lorsque vous configurez manuellement votre site avec la console de gestion AWS, aucune géodatabase n'est créée. Si vous souhaitez utiliser des géodatabases dans PostgreSQL avec votre instance ArcGIS Server on Amazon Web Services, vous devez les créer.

Procédez comme suit pour créer une géodatabase dans PostgreSQL à utiliser avec votre instance ArcGIS Server on Amazon Web Services :

  1. Créez une connexion SSH avec votre site ArcGIS for Server (SITEHOST).

    Pour ce faire, vous devez ouvrir le port SSH (22) dans votre groupe de sécurité.

  2. Copiez le script suivant dans un éditeur de texte :
    #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. Modifiez les valeurs entre les signes inférieur et supérieur (<>) pour y inclure les informations propres à votre site et enregistrez le fichier avec l'extension .py.
  4. Ouvrez un interpréteur de commandes et définissez des variables d'environnement pour qu'elles pointent vers le script.
  5. Exécutez le script pour créer la géodatabase.

    Si les informations que vous avez fournies sont correctes, vous recevez un message vous confirmant la création de la géodatabase. Si vous recevez un message d'erreur, vérifiez si les informations que vous avez fournies sont exactes (par exemple, si les mots de passe sont corrects et si le nom de la base de données est valide).

    Astuce:

    Recherchez les messages d'erreur étendus dans le fichier journal PostgreSQL situé dans data/pg_log.

  6. La création de votre géodatabase est terminée. Vous devez ajouter des rôles de connexion et des structures utilisateur à la base de données.

  7. Copiez ce script dans un éditeur de texte pour vous connecter à la nouvelle géodatabase et créer un rôle de connexion avec la structure correspondante. Vous pouvez également spécifier un rôle de connexion existant et une structure appropriée sera créée dans la base de données.
    #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. Modifiez les valeurs entre les signes inférieur et supérieur (<>) pour y inclure les informations propres au rôle de connexion et à la base de données de votre site et enregistrez le fichier avec l'extension .py.

    Par exemple, si vous souhaitez que le rôle de connexion par défaut créé avec ArcGIS Server Cloud Builder on Amazon Web Services (owner) crée des données dans votre nouvelle géodatabase, spécifiez le rôle de connexion owner dans le script.

  9. Ouvrez un interpréteur de commandes et définissez des variables d'environnement pour qu'elles pointent vers le script.
  10. Exécutez le script pour créer un rôle de connexion et une structure (ou une structure pour un rôle de connexion existant).

    Le script accorde des privilèges d'utilisation sur la structure au public.

  11. Répétez l'étape précédente pour chaque rôle de connexion qui va créer des données dans la nouvelle géodatabase.
Rubriques connexes