Skip to main content

Создание базы геоданных в Oracle

Доступно с лицензией Standard или Advanced.

Чтобы создать базу геоданных в базе данных Oracle, запустите инструмент геообработки или скрипт Python из клиента ArcGIS.

При создании базы геоданных с помощью ArcGIS Pro версии 3.7, версия этой базы геоданных будет 12.1.0.x.

Начните с чтения требований, а затем выполните действия, соответствующие вашей ситуации.

Предварительные условия

Перед созданием базы геоданных в Oracle, сделайте следующее:

Вы администратор базы данных и базы геоданных

Если вы выполняете роль администратора базы данных и администратора базы геоданных и, следовательно, знаете пароль для обеих учетных записей, вы можете использовать инструмент геообработки Создать многопользовательскую базу геоданных или вызвать его с помощью скрипта Python, чтобы создать базу геоданных в Oracle.

Инструмент Создать многопользовательскую базу геоданных создаст пользователя sde, схему и табличное пространство, в также предоставит пользователю sde необходимые права доступа для создания базы геоданных. Чтобы достичь этого, инструмент использует следующие настройки по умолчанию:

  • Создает пользователя базы данных sde

  • Создает табличное пространство размером 400 МБ в местоположении Oracle по умолчанию и задает его как табличное пространство пользователя sde

  • Предоставляет пользователю sde права доступа для создания и обновления базы геоданных, удаления подключений к ней и импорта данных с помощью Oracle Data Pump

  • Предоставляет права на пакеты, необходимые для создания базы геоданных

  • Создает базу геоданных

Подробнее о необходимых правах см. в разделе Права доступа для баз геоданных в Oracle.

Примечание:

Этот рабочий процесс нельзя использовать для создания базы геоданных в сервисе базы данных.

Перед тем как запустить инструмент или скрипт создания базы геоданных, необходимо настроить Oracle.

Установка и настройка Oracle

Перед тем как приступить к созданию базы геоданных, необходимо установить и настроить Oracle, а также создать базу данных. То, как вы (или ваш ИТ-отдел) настроите экземпляр Oracle и базу данных, зависит от конкретных потребностей вашей организации. Обратитесь к документации по Oracle для получения информации об установке и настройке Oracle.

Проверьте Системные требования ArcGIS для использования Oracle, прежде чем создать базу геоданных, чтобы быть уверенным, что комбинация Oracle, ArcGIS и аппаратного обеспечения, которые вы хотите использовать, поддерживается.

Если вам нужна возможность выполнять что-либо из следующего, вам потребуется также настроить Oracle extproc для доступа к библиотекам Esri ST_Geometry:

После установки и настройки Oracle, установите клиенты ArcGIS и Oracle.

Установка и настройка клиентов

Вы можете установить ArcGIS Pro (Standard или Advanced) или ArcGIS Server и запустить скрипт для создания базы геоданных. Чтобы запустить инструмент геообработки Создать многопользовательскую базу геоданных вместо скрипта, установите ArcGIS Pro.

Примечание:

Для авторизации базы геоданных в следующем разделе вам потребуется файл ключей ArcGIS Server (enterprise). Даже если вы не запускаете скрипт Python с компьютера ArcGIS Server для создания базы геоданных, вы должны установить и авторизовать ArcGIS Server для того, чтобы получить файл ключей. Может потребоваться скопировать файл с компьютера ArcGIS Server в директорию, к которой есть доступ у инструмента геообработки или скрипта Python.

В большинстве случаев клиентское приложение ArcGIS устанавливается на другой компьютер, а не на тот, на котором установлен Oracle. Поэтому необходимо иметь поддерживаемого клиента Oracle на компьютере, на котором установлен ArcGIS, чтобы подключиться к экземпляру Oracle. Обратитесь к документации Oracle, чтобы определить, какую версию клиента Oracle необходимо установить для подключения к используемой версии Oracle, а также получить инструкции по установке и настройке клиента Oracle.

  1. Установите клиентское приложение ArcGIS, которое будете использовать для создания этой базы геоданных.

    Следуйте инструкциям руководств по установке программного обеспечения.

  2. Установите и настройте клиентское приложение Oracle на клиентском компьютере ArcGIS.

    Получить клиент Oracle Instant, Runtime или Administrator Client можно от Oracle. Инструкции по установке см. в документации Oracle.

  3. Добавьте путь и имя директории, куда вы поместили клиента Oracle, в переменную среды вашей ОС или профиля пользователя.

    • В Linux установите переменную среды LD_LIBRARY_PATH.

    • В Microsoft Windows установите переменную среды PATH.

  4. Если клиент ArcGIS уже запущен, перезапустите его, чтобы он опознал клиента Oracle и считал новые переменные среды.

  5. Вы можете подключиться из ArcGIS к Oracle с помощью строки Easy Connect, но вам необходимо настроить базу данных Oracle на работу со строками Easy Connect.

    Если у вас установлен полный клиент Oracle, а вы хотите использовать для подключения синтаксис Easy Connect, убедитесь, что файл sqlnet.ora клиента настроен на разрешение использования Easy Connect, а сервер Oracle разрешает синтаксис Easy Connect. Более подробные инструкции см. в документации к Oracle.

Теперь вы можете создать базу геоданных.

Создание базы геоданных

Вы можете запустить инструмент геообработки Создать многопользовательскую базу геоданных из ArcGIS Pro (Standard или Advanced), либо запустить скрипт Python из ArcGIS Pro или с компьютера с ArcGIS Server для создания пользователя sde, схемы, табличного пространства и базы геоданных.

Запустить инструмент Создать многопользовательскую базу геоданных

Для создания базы геоданных в ArcGIS Pro вы можете запустить инструмент геообработки.

Следуйте приведенным шагам по созданию базы геоданных с помощью инструмента Создать многопользовательскую базу геоданных:

  1. Запустите ArcGIS Pro.

  2. Откройте инструмент Создать многопользовательскую базу геоданных.

    Этот инструмент вы найдете в группе инструментов Администрирование баз геоданных набора инструментов Управление данными. Для основной информации об открытии инструментов геообработки см. Поиск инструмента геообработки.

  3. В раскрывающемся списке Платформа базы данных выберите Oracle.

  4. Укажите информацию, необходимую для подключения к экземпляру Oracle.

    • Если вы уже настроили конфигурацию клиентского приложения Oracle для использования псевдонима сети TNS, введите псевдоним сервиса Net в текстовом окне Экземпляр.

    • Если вы не настроили псевдонима сети клиентского приложения Oracle, а база данных Oracle и клиент настроены на работу с Easy Connect, введите в текстовом окне Экземпляр строку Oracle Easy Connect.

    Список возможных строк Easy Connect см. в Подключение к Oracle из ArcGIS.

  5. Введите пароль пользователя sys в поле Пароль администратора базы данных.

    Примечание:

    Текстовое окно Администратор базы данных заполняется с именем пользователя sys, поскольку для того, чтобы создать администратора и табличное пространство базы геоданных, вы должны быть подключены к базе данных в качестве ее администратора.

  6. Введите sde в поле Администратор базы геоданных.

    Если пользователя sde в базе данных нет, инструмент создаст его и предоставит ему права доступа, необходимые для создания базы геоданных. Если пользователь существует, ему предоставляются необходимые права доступа.

  7. Введите пароль пользователя sde в поле Пароль администратора базы геоданных.

    Если пользователь sde уже существует в базе данных, необходимо ввести правильный пароль существующего пользователя; этот инструмент не меняет пароль. Если вы создаете пользователя sde, будет использоваться тот же пароль.

  8. Задайте табличное пространство для пользователя sde.

    • Если у вас имеется заранее настроенное табличное пространство, которое вы хотите использовать как репозитарий базы геоданных, введите имя этого табличного пространства в текстовом поле Имя табличного пространства.

    • Чтобы создать табличное пространство, введите корректное имя в текстовом окне Имя табличного пространства, и инструмент создаст 400 MB табличного пространства в местоположении Oracle по умолчанию. Если имя табличного пространства не указано, будет создано табличное пространство SDE_TBS в качестве табличного пространства по умолчанию для пользователя sde.

  9. Чтобы указать Файл авторизации, выберите файл ключей, который был создан при авторизации ArcGIS Server.

    Если вы ещё не сделали этого, авторизуйте ArcGIS Server сейчас, чтобы создать этот файл ключей. Этот файл записывается в папку \\Program Files\ESRI\License<release#>\sysgen на серверах Windows и в папку /arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License<release#>/sysgen на серверах Linux. Скопируйте файл ключей в местоположение, к которому имеет доступ инструмент.

  10. Щелкните Запустить.

    Сообщение о создании базы геоданных записывается в файл sde_setup.log, который создается в каталоге, указанном для переменной %TEMP%, на том компьютере, где запущен инструмент. При наличии проблем с созданием базы геоданных изучите этот файл журнала для их устранения.

В базе данных Oracle создается база геоданных.

Затем, если параметр базы данных Oracle open_cursors содержит значение, отличное от 300, запустите хранимую процедуру sde.gdb_util.update_open_cursors для синхронизации параметра базы данных Oracle с настройками базы геоданных.

Запустить скрипт Python

Вы можете скопировать, сохранить и запустить указанный здесь скрипт для создания базы геоданных из ArcGIS Pro (Standard или Advanced) или компьютера ArcGIS Server.

Подсказка:

Сведения о запуске Python с компьютера ArcGIS Server см. в разделе ArcGIS Server и ArcPy.

  1. Создайте текстовый файл на клиентском компьютере ArcGIS и скопируйте следующий скрипт в файл, предоставив специфичную для вашего сайта информацию:

    """
    Name: create_enterprise_gdb.py
    Description: Create an enterprise geodatabase in Oracle with provided DBMS connection information
    Author: Esri
    """
    # Import system modules
    import arcpy, os
    # Local variables
    # Provide correct path to your keycodes file
    # Replace all arcpy.management.CreateEnterpriseGeodatabase values except "ORACLE", "sys", "sde", and license
    license = os.fsencode("/arcgis/path/to/authorization_file/keycodes")
    try:
      arcpy.management.CreateEnterpriseGeodatabase(
        "ORACLE",
        "oracle:1521/orainstance",
        "",
        "DATABASE_AUTH",
        "sys",
        "syspwdqF2b3pxJp3j2",
        "",
        "sde",
        "sdepwdkzsPzL8GuCEA",
        "sdetblspace",
        license
      )
      for i in range(arcpy.GetMessageCount()):
        arcpy.AddReturnMessage(i)
        arcpy.AddMessage("+++++++++\n")
    except:
      for i in range(arcpy.GetMessageCount()):
        arcpy.AddReturnMessage(i)
    
  2. Замените значения, как указано в скрипте.

  3. Сохраните файл с расширением .py.

  4. Запустите скрипт.

    Сообщение о создании базы геоданных записывается в файл sde_setup.log, который создается в каталоге, указанном для переменной TEMP или TMP, на том компьютере, где запущен скрипт. При наличии проблем с созданием базы геоданных изучите этот файл журнала для их устранения.

Теперь у вас есть база геоданных в Oracle.

Затем, если параметр базы данных Oracle open_cursors содержит значение, отличное от 300, запустите хранимую процедуру sde.gdb_util.update_open_cursors для синхронизации параметра базы данных Oracle с настройками базы геоданных.

Администратор Oracle настраивает базу данных; администратор базы геоданных создает базу геоданных

В случае, если у лица, создающего базу геоданных, нет доступа к паролю администратора базы данных, администратор базы данных может настроить базу данных и пользователя sde, а затем администратор базы геоданных может подключиться к этой базе данных, используя учетную запись sde, и создать базу геоданных с помощью инструмента геообработки Включить многопользовательскую базу геоданных или с помощью скрипта Python.

Инструмент Включить многопользовательскую базу геоданных использует файл подключения к базе данных и создает системные таблицы базы геоданных, представления, функции и процедуры в пользовательской схеме sde.

Установка и настройка Oracle

Прежде чем администратор базы геоданных сможет ее создать, администратор базы данных должен сделать следующее:

  • Установите и настройте экземпляр Oracle и базу данных. Настройка Oracle зависит от специфических требований организации. Обратитесь к документации Oracle для получения информации об установке и настройке.

    Изучите Системные требования ArcGIS и убедитесь в совместимости системы управления базами данных, ArcGIS и сочетаний аппаратных средств, которые вы намереваетесь использовать.

  • Создайте пользователя sde и схему.

  • Предоставить пользователю sde права доступа, необходимые для создания базы геоданных. Список необходимых прав находится в разделе Права доступа для баз геоданных в Oracle.

  • Создайте табличное пространство пользователя sde и сделайте его пространством по умолчанию.

  • Предоставьте права execute на выполнение пакетов, необходимых для создания базы геоданных. Список пакетов находится в разделе Права доступа для баз геоданных в Oracle.

Если вам нужна возможность выполнять что-либо из следующего, вы также должны настроить Oracle extproc для доступа к библиотекам Esri ST_Geometry:

После установки и настройки Oracle, администратор базы геоданных может установить клиентов ArcGIS и Oracle.

Установка и настройка клиентов

Вы можете установить ArcGIS Pro (Standard или Advanced) или ArcGIS Server, чтобы запустить скрипт Python и создать базу геоданных. Чтобы вместо скрипта запустить инструмент геообработки Включить многопользовательскую базу геоданных, установите ArcGIS Pro.

Примечание:

Для авторизации базы геоданных в следующем разделе вам потребуется файл ключей ArcGIS Server (enterprise). Даже если вы не запускаете скрипт Python с компьютера ArcGIS Server для создания базы геоданных, вы должны установить и авторизовать ArcGIS Server для того, чтобы получить файл ключей. Может потребоваться скопировать файл с компьютера ArcGIS Server в директорию, к которой есть доступ у инструмента геообработки или скрипта Python.

В большинстве случаев клиентское приложение ArcGIS устанавливается на другой компьютер, а не на тот, на котором установлен Oracle. Поэтому необходимо иметь поддерживаемого клиента Oracle на компьютере, на котором установлен ArcGIS, чтобы подключиться к экземпляру Oracle. Обратитесь к документации Oracle, чтобы определить, какую версию клиента Oracle необходимо установить для подключения к используемой версии Oracle, а также получить инструкции по установке и настройке клиента.

  1. Установите клиентское приложение ArcGIS, которое будете использовать для создания этой базы геоданных.

    Следуйте инструкциям руководств по установке программного обеспечения.

  2. Установите и настройте клиентское приложение Oracle на клиентском компьютере ArcGIS.

    Получить клиент Oracle Instant, Runtime или Administrator Client можно от Oracle. Инструкции по установке см. в документации Oracle.

  3. Добавьте путь и имя директории, куда вы поместили клиента Oracle, в переменную среды вашей ОС или профиля пользователя.

    • В Linux установите переменную среды LD_LIBRARY_PATH.

    • В Windows установите переменную среды PATH.

  4. Если клиент ArcGIS уже запущен, перезапустите его, чтобы он опознал клиента Oracle и считал новые переменные среды.

Вы можете подключиться из ArcGIS к Oracle, используя строку Easy Connect. Однако администратор базы данных должен настроить базу данных Oracle на работу с Easy Connect. Если у вас установлен полный клиент Oracle, а вы хотите использовать для подключения синтаксис Easy Connect, убедитесь, что файл sqlnet.ora клиента настроен на разрешение использования Easy Connect, а администратор базы данных настроил сервер Oracle на работу с синтаксисом Easy Connect. Более подробные инструкции см. в документации к Oracle.

Теперь вы можете создать базу геоданных.

Создание базы геоданных

Администратор базы геоданных может запустить инструмент Включить многопользовательскую базу геоданных из ArcGIS Pro (Standard или Advanced) либо запустить скрипт Python из ArcGIS Pro (Standard или Advanced) или с компьютера ArcGIS Server, чтобы создать базу геоданных в существующей базе данных.

Запустите инструмент Включить многопользовательскую базу геоданных

Чтобы создать базу геоданных, запустите этот инструмент геообработки из ArcGIS Pro.

Следуйте приведенным шагам по созданию базы геоданных с помощью инструмента геообработки Включить многопользовательскую базу геоданных:

  1. Запустите ArcGIS Pro.

  2. Подключитесь к базе данных Oracle от имени пользователя sde.

    Сохраните пароль пользователя в диалоговом окне Подключение к базе данных.

  3. Откройте диалоговое окно инструмента геообработки Создать многопользовательскую базу геоданных.

    Для основной информации об открытии инструментов геообработки см. Поиск инструмента геообработки.

  4. Используйте подключение к базе данных, созданное на шаге 2, в поле Входное подключение к базе данных.

  5. Перейдите к файлу авторизации, который был создан при авторизации ArcGIS Server и добавьте его в текстовое поле Файл авторизации.

    Если данная процедура еще не выполнена, авторизуйте ArcGIS Server для создания этого файла. При использовании мастера для авторизации ArcGIS Server файл ключей записывается на сервер, где установлено программное обеспечение. Если вы авторизовали ArcGIS Server на компьютере с Linux, файл ключей был создан в /arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License<release>/sysgen. Если вы авторизовали на сервере Windows, то файл был создан в Program Files\ESRI\License<release>\sysgen. Скопируйте файл ключей в местоположение, к которому имеет доступ инструмент.

  6. Щелкните Запустить.

    Сообщение о создании базы геоданных записывается в файл sde_setup.log, который создается в каталоге, указанном для переменной %TEMP%, на том компьютере, где запущен инструмент. При наличии проблем с созданием базы геоданных изучите этот файл журнала для их устранения.

В базе данных создается база геоданных.

Если клиенты будут работать с базой геоданных через SQL, настройте Oracle extproc для разрешения доступа.

Затем, администратор базы данных может синхронизировать настройки open_cursors между Oracle и базой геоданных, используя сохраненную процедуру sde.gdb_util.update_open_cursors.

Запустить скрипт Python

Если вы хотите создать базу геоданных, запустив скрипт из ArcGIS Server или установленного ArcGIS Pro, вы можете использовать указанный здесь скрипт.

Подсказка:

Сведения о запуске Python с компьютера ArcGIS Server см. в разделе ArcGIS Server и ArcPy.

  1. Создайте текстовый файл на клиентском компьютере ArcGIS и скопируйте следующий скрипт в файл, предоставив специфичную для вашего сайта информацию:

    # Name: enable_enterprise_gdb.py
    # Description: Create an enterprise geodatabase in an existing Oracle database
    # Import system modules
    import arcpy, os
    # Local variables
    # Replace directories to work for your site
    license = "/arcgis/path/to/authorization_file/keycodes"
    tempdir = "/tmp/"
    connection_file_name = "egdb_connection.sde"
    # Check for the .sde file and delete it if present
    connection_file_name_path = os.path.join(tempdir, connection_file_name)
    arcpy.env.overwriteOutput=True
      if os.path.exists(connection_file_name_path):
         os.remove(connection_file_name_path)
    # Create a connection to the geodatabase as the geodatabase administrator
    # Replace "gisprod/orcl" with your Oracle instance string and replace "Tgdbst@rtsh3r3" with your sde password
    arcpy.management.CreateDatabaseConnection(
      tempdir,
      connection_file_name,
      "ORACLE",
      "gisprod/orcl",
      "DATABASE_AUTH",
      "sde",
      "Tgdbst@rtsh3r3",
      "SAVE_USERNAME"
    )
    # Enable geodatabase
    try:
      arcpy.management.EnableEnterpriseGeodatabase(connection_file_name_path, license)
    except:
      for i in range(arcpy.GetMessageCount()):
        arcpy.AddReturnMessage(i)
    
  2. Замените значения, как указано в скрипте.

  3. Сохраните файл с расширением .py.

  4. Запустите скрипт.

    Сообщение о создании базы геоданных записывается в файл sde_setup.log, который создается в каталоге, указанном для переменной TEMP или TMP, на том компьютере, где запущен скрипт. При наличии проблем с созданием базы геоданных изучите этот файл журнала для их устранения.

Теперь у вас есть база геоданных в базе данных Oracle.

Затем, администратор базы данных может синхронизировать настройки open_cursors между Oracle и базой геоданных, используя сохраненную процедуру sde.gdb_util.update_open_cursors.