Если вы создали сайт ArcGIS Server на Amazon Web Services (AWS) с помощью Esri Ubuntu AMI, вы можете создать базы геоданных в кластере баз данных PostgreSQL, который входит в экземпляр, с помощью скрипта Python, который вызывает инструмент геообработки Создать многопользовательскую базу геоданных.
Если вы использовали ArcGIS Server Cloud Builder on Amazon Web Services для создания сайта ArcGIS Server на AWS, в PostgreSQL будут созданы две многопользовательские базы геоданных. Если вам нужны дополнительные базы геоданных – например, если необходимо настроить имя или местоположение используемых баз геоданных или чтобы различные подразделения могли управлять своими дискретными данными и требуют наличия собственных баз геоданных – вы можете создать дополнительные базы геоданных.
Когда вы вручную настраиваете свой сайт с помощью Консоли управления AWS, базы геоданных не создаются. Если вы хотите использовать базы геоданных в кластере баз данных PostgreSQL на AWS с вашим сайтом ArcGIS Server, то вам необходимо создать их.
Выполните следующие шаги для создания базы геоданных в кластере баз данных PostgreSQL на AWS и его регистрации на сайте ArcGIS Server::
- Создайте SSH-подключение для вашего сайта ArcGIS Server (SITEHOST).
Для этого необходимо открыть порт SSH (22) в группе безопасности.
- Скопируйте в текстовый редактор следующий скрипт:
#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")
- Измените значения в скобках (<>), чтобы они соответствовали информации для вашего сайта и сохраните файл с расширением .py.
- Откройте командный процессор и задайте переменные среды для указания на скрипт.
- Запустите скрипт для создания базы геоданных.
Если предоставленная вами информация верна, то вы получите сообщение о том, что база геоданных была успешно создана. Если вы получили сообщение об ошибке, убедитесь, что предоставленная вами информация верна (например, вы ввели правильные пароли и имя базы данных корректно).
Подсказка:
Проверьте файл журнала PostgreSQL в data/pg_log на наличие расширенных сообщений об ошибках.
- Скопируйте этот скрипт в текстовый редактор для подключения к новой базе геоданных и создайте ролевое имя с соответствующей схемой. Можно также указать существующее ролевое имя, а схема для него будет создана в базе данных.
#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>")
- Измените значения в скобках (<>), чтобы они соответствовали информации о базе данных и о роли учётной записи для вашего сайта и сохраните файл с расширением .py.
Например, если вы хотите, чтобы роль пользователя по умолчанию, созданная с помощью ArcGIS Server Cloud Builder on Amazon Web Services – owner – могла создавать данные в вашей новой базе геоданных, укажите в скрипте роль пользователя owner.
- Откройте командный процессор и задайте переменные среды для указания на скрипт.
- Запустите скрипт, чтобы создать роль пользователя и схему (либо схему для существующей роли пользователя).
Скрипт присвоит схеме права публичного доступа usage.
- Повторите предыдущий шаг для роли каждой учётной записи, которая будет создавать данные в новой базе геоданных.
- Войдите в ArcGIS Server Manager для сайта ArcGIS Server и зарегистрируйте на сайте каждую базу геоданных.
Это гарантирует, что у публикуемых сервисов будет доступ к данным. Инструкции по регистрации базы данных см. в разделе Регистрация данных на ArcGIS Server с помощью Manager справочной документации ArcGIS Server.
Теперь у вас есть новая база геоданных. Необходимо добавить роли пользователей и пользовательские схемы к базе геоданных.