ArcGIS поддерживает несколько облачных предложений, где базы данных используются как сервис на основе PostgreSQL. Вы можете создать многопользовательскую базу геоданных в большинстве облачных сервисов баз данных PostgreSQL, которые поддерживают Esri .
Если вы создадите базу геоданных с помощью ArcGIS Pro версии 3.6, версия этой базы геоданных будет 12.0.0.x.
Выполните необходимые условия
Прежде чем создать базу геоданных, необходимо создать экземпляр базы данных в своей облачной учетной записи, настроить его на получение подключений, создать пользователя sde и схему и предоставить пользователю sde права для создания базы геоданных.
Следуйте инструкциям, предоставленным вашим облачным провайдером, чтобы выполнить эти шаги.
Также надо скопировать файл авторизации с кодом ключа ArcGIS Server на облачный компьютер, где установлен клиент ArcGIS, который будет использоваться для создания базы геоданных.
Перед созданием базы геоданных выполните следующие обязательные шаги:
- Убедитесь, что используемые вами версии ArcGIS поддерживают тип и версию сервиса облачных баз данных, которые вы хотите использовать.
- Создайте экземпляр сервиса баз данных на выбранной вами облачной платформе.
- Создайте логин пользователя с именем sde для экземпляра базы данных.
- Предоставьте пользователю sde права, необходимые для создания базы геоданных для используемого вами типа сервиса баз данных.
- Создайте схему с именем sde в экземпляре базы данных и предоставьте пользователю sde права доступа к схеме.
- Установите клиентское приложение ArcGIS—ArcGIS Pro или ArcGIS Server—, которое будет использоваться для создания базы геоданных.
Установите клиентское приложение ArcGIS на той же облачной платформе и в том же регионе, где запущен сервис базы данных.
- Убедитесь, что экземпляр базы данных настроен таким образом, чтобы разрешать подключения из клиента ArcGIS.
- С помощью клиента ArcGIS, который был установлен на шаге 6, создайте подключение к базе данных с экземпляром базы данных, подключившись как пользователь sde.
Примеры строк экземпляра смотрите в разделе Подключения к базе данных в ArcGIS Pro.
Если пользователь sde является пользователем, прошедшим аутентификацию в базе данных, вы должны сохранить пароль пользователя sde в соединении с базой данных.
- Получите файл ключей ArcGIS Server и поместите его в такое место, где он будет доступен для клиента ArcGIS, который будет использоваться для создания базы геоданных.
Теперь вы можете создать базу геоданных в экземпляре базы данных в облаке.
Создайте базу геоданных в экземпляре сервиса базы данных
Если ArcGIS Pro установлен в том же облачном регионе, что и сервис базы данных, можно запустить инструмент геообработки Включить многопользовательскую базу геоданных для создания базы геоданных в экземпляре базы данных, как описано в первом разделе ниже.
Либо можно запустить функцию EnableEnterpriseGeodatabase ArcPy в окне Python или запустить скрипт Python из установки ArcGIS Pro или ArcGIS Server в облаке.
Запустите инструмент Включить многопользовательскую базу геоданных (Enable Enterprise Geodatabase)
Следуйте приведенным шагам по созданию базы геоданных с помощью инструмента Включить многопользовательскую базу геоданных в ArcGIS Pro:
- Войдите в виртуальную машину в облачной среде и запустите ArcGIS Pro.
- Откройте инструмент Включить многопользовательскую базу геоданных.
Для основной информации об открытии инструментов геообработки см. Поиск инструмента геообработки.
- В качестве параметра Входное подключение к базе данных укажите файл подключения к базе данных, который вы создали в рамках выполнения необходимых шагов.
- Чтобы указать Файл авторизации, выберите файл keycodes, который был создан при авторизации ArcGIS Server (Enterprise).
Этот файл записывается в \\Program Files\ESRI\License<release#>\sysgen при установке ArcGIS Server на Windows и в /arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License<release#>/sysgen при установке ArcGIS Server на Linux.
- Щелкните Запустить.
Теперь у вас есть база геоданных в экземпляре базы данных.
Вы можете найти сообщения, относящиеся к созданию базы геоданных, в файле sde_setup.log, который создается в каталоге, указанном для переменной TEMP, на том компьютере, где запущен этот скрипт. При наличии проблем с созданием базы геоданных посмотрите этот файл журнала для их устранения.
Затем администратор базы данных может создать роли для входа и соответствующие схемы для пользователей, которые будут создавать, редактировать и просматривать данные, а также создать роли входа для редакторов и вьюеров данных и предоставьте этим пользователям соответствующие права.
Запустите функцию ArcPy EnableEnterpriseGeodatabase
Чтобы запустить функции ArcPy , подключитесь к одному из клиентских компьютеров ArcGIS в облаке и запустите функцию из окна Python.
- Войдите в виртуальную машину в облачной среде, на которой установлен ArcGIS Pro или ArcGIS Server.
- Откройте окно Python.
Смотрите следующее для получения информации о доступе к Python из установок ArcGIS:
- Окно Python — информация об открытии окна из ArcGIS Pro
- ArcGIS Server и ArcPy—Информация о доступе к окну Python при установке ArcGIS Server
- Запустите функцию EnableEnterpriseGeodatabase ArcPy из окна Python.
Используйте созданный вами файл подключения к базе данных и ссылайтесь на файл авторизации ArcGIS Server, который вы разместили в доступном месте, как часть необходимых шагов.
В следующем примере функция EnableEnterpriseGeodatabase запускается из установки ArcGIS Pro. Файл подключения к базе данных (postresdbaas.sde) хранится в папке проекта ArcGIS Pro (C:\proprojects\pg_proj), а файл авторизации (keycodes) хранится в C:\authcodes.
arcpy.management.EnableEnterpriseGeodatabase(r"C:\proprojects\pg_proj\postresdbaas.sde",r"C:\authcodes\keyfile")В следующем примере функция запускается из установки ArcGIS Server на компьютере с Linux. Файл подключения к базе данных (postresdbaas.sde) хранится в /usr/connectionfiles, а файл кодов ключей находится в расположении ArcGIS Server по умолчанию.
arcpy.management.EnableEnterpriseGeodatabase("/usr/connectionfiles/postresdbaas.sde","/usr/arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License/sysgen/keycodes")
Теперь у вас есть база геоданных в экземпляре базы данных.
Вы можете найти сообщения, относящиеся к созданию базы геоданных, в файле sde_setup.log, который создается в каталоге, указанном для переменной TEMP, на том компьютере, где запущена эта функция. При наличии проблем с созданием базы геоданных посмотрите этот файл журнала для их устранения.
Затем администратор базы данных может создать роли для входа и соответствующие схемы для пользователей, которые будут создавать, редактировать и просматривать данные, а также создать роли входа для редакторов и вьюеров данных и предоставьте этим пользователям соответствующие права.
Запуск скрипта Python из клиента ArcGIS
Чтобы создать базу геоданных с помощью скрипта из ArcGIS Pro (Standard или Advanced) или компьютера ArcGIS Server, используйте предоставленный здесь скрипт.
Подсказка:
Для получения дополнительной информации о запуске Python на компьютере ArcGIS Server см. ArcGIS Server и ArcPy.
Выполните следующие шаги, чтобы запустить скрипт Python, который вызывает функции CreateDatabaseConnection и EnableEnterpriseGeodatabase ArcPy для подключения к базе данных и создания базы геоданных в сервисе баз данных PostgreSQL:
- Сохраните файл с расширением .py.
- Запустите скрипт, предоставив параметры и информацию, специфичные для вашего экземпляра.
В следующих примерах файл enable_gdb.py запускается с виртуальной машины в том же облачном регионе, что и сервис базы данных.
В этом примере скрипт запускается из установки ArcGIS Server на компьютере Linux: Он подключается к базе данных с именем myauroradb в экземпляре Amazon Aurora PostgreSQL в регионе us-west-2 (database-1-instance-1.zyxjtlpj9fer.us-west-2.rds.amazonaws.com). Файл с кодами ключей был помещен в /usr/arcgis/auth на компьютере с ArcGIS Server.
./enable_gdb.py --DBMS POSTGRESQL -i database-1-instance-1.zyxjtlpj9fer.us-west-2.rds.amazonaws.com --auth DATABASE_AUTH -u sde -p sdeP@ss -D myauroradb -l '/usr/arcgis/auth/keycodes'В следующем примере скрипт запускается с компьютера Microsoft Windows в Azure. Он подключается к базе данных с именем azure pdf в экземпляре Microsoft Azure Database for PostgreSQL (гибкий сервер) в my-pg-flex.postgres.database.azure.com. Файл кодов ключей находится в расположении ArcGIS Server по умолчанию.
enable_gdb.py --DBMS POSTGRESQL -i my-pg-flex.postgres.database.azure.com --auth DATABASE_AUTH -u sde -p EsDeeEpass -D azurepgf -l '\\Program Files\ESRI\License\sysgen\keycodes'В следующем примере скрипт запускается с компьютера, на котором установлен ArcGIS Pro и в который был помещен файл кодов ключей в Users\MyUser\Documents\AuthFiles\keycodes. Скрипт подключается к базе данных (gcspostgres) в экземпляре Google Cloud SQL for PostgreSQL, доступ к которому осуществляется через общедоступный IP-адрес 98.765.43.210.
enable_gdb.py --DBMS POSTGRESQL -i 98.765.43.210 --auth DATABASE_AUTH -u sde -p Zpassw0rd -D gcspostgres -l '\\Users\MyUser\Documents\AuthFiles\keycodes'Подсказка:
Введите -h или --help в командной строке для получения справки по синтаксису для этого скрипта.
Теперь у вас есть база геоданных в экземпляре базы данных.
Вы можете найти сообщения, относящиеся к созданию базы геоданных, в файле sde_setup.log, который создается в каталоге, указанном для вашей переменной TEMP или TMP на той виртуальной машине, где запущен этот скрипт. При наличии проблем с созданием базы геоданных посмотрите этот файл журнала для их устранения.
Затем администратор базы данных может создать роли для входа и соответствующие схемы для пользователей, которые будут создавать, редактировать и просматривать данные, а также создать роли входа для редакторов и вьюеров данных и предоставьте этим пользователям соответствующие права.