Skip To Content

Подключение к Oracle из ArcGIS

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

Так как клиент Oracle настроен на всех клиентских компьютерах ArcGIS, создайте файл подключения к базе данных в ArcGIS Pro или ArcMap.Для публикации веб-сервисов ArcGIS Server, которые ссылаются на данные в базе данных Oracle, зарегистрируйте файл подключения к базе данных с сайтами ArcGIS Server.

Подключение из ArcGIS Pro

Чтобы подключиться к базе данных или геоданных Oracle из проекта ArcGIS Pro, установите клиент Oracle на компьютер с ArcGIS Pro, задайте переменную среды PATH в соответствии с расположением клиента Oracle и создайте подключение базы данных.

Установите клиент Oracle

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

Следуйте инструкциям в документации Oracle, чтобы получить клиент Oracle Instant, Runtime, или Administrator с Oracle и установить его на клиентский компьютер.

Задание переменной среды PATH

Задайте переменную среды PATH на компьютере с ArcGIS Pro в соответствии с местом установки клиента Oracle. Подробные инструкции по заданию переменной PATH см. в документации Microsoft Windows.

Примечание:

Если и ArcMap, и ArcGIS Pro установлены на одном и том же компьютере, установите переменную PATH для чтения 64-разрядного клиента до чтения 32-разрядного клиента. Например, если 32-разрядный Oracle Instant Client установлен в c:\Program Files (x86)\Oracle, а 64-разрядный Oracle Instant Client установлен в c:\Program Files\Oracle, добавьте в начало переменной PATH в Windows следующее: C:\Program Files\Oracle;C:\Program Files (x86)\Oracle;.

Если ArcGIS Pro работал до изменения переменной PATH, перезапустите его, чтобы использовать новые параметры.

Подключение к базе данных

Добавьте подключение к базе данных, используя диалоговое окно Подключение базы данных или инструмент Создать подключение базы данных. В следующих шагах описано использование диалогового окна Подключение базы геоданных.

  1. Щелкните правой кнопкой мышиБазы данных на панели Каталог и щелкните Новое подключение к базе данных.
  2. В раскрывающемся списке Платформа базы данных выберите Oracle.
  3. Либо введите имя Oracle TNS в поле Экземпляр, либо задайте одну из следующих строк Oracle Easy Connect:
    • Имя сервера Oracle /сервиса Oracle или ID

      Например, если Oracle установлен на myserver, и имя сервиса Oracle – myosvc, введите следующее:

      myserver/myosvc

    • Имя сервера Oracle:номер порта Oracle/имя или ID сервиса Oracle

      В этом примере Oracle установлен на myserver, использует порт 60000, а имя сервиса Oracle - myoservice.

      myserver:60000/myoservice

    • URL-адрес сервера Oracle

      URL для такого же случая, как в последнем примере, был бы следующим:

      //myserver:60000/myoservice

    • Имя сервера Oracle (вы можете использовать его в том случае, если приемник Oracle на сервере настроен на указание экземпляра по умолчанию).
    • IP-адрес сервера Oracle /сервиса Oracle или ID

      Например, если адрес сервера 10:10:10:10, а имя сервера Oracle – orasvc, введите 10:10:10:10/orasvc.

      Для адресов IPV6, поместите адрес в скобки, например, [4000:ab5:0:0:f666:d191:77f5:e2bd]/orasvc.

    • IP-адрес сервера Oracle: номер порта Oracle/имя или ID сервиса Oracle

      В этом примере IP-адрес 10:20:30:40, порт 59999, а сервис Oracle – myomy1: 10:20:30:40:59999/myomy1.

      IPV6-адрес для такого же порта и сервиса выглядел бы следующим образом: [6543:ef4:0:1:f587:l249:12f9:a3cd]:59999/myomy110:20:30:40:59999/myomy1.

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

  4. Выберите тип аутентификации, который будет использоваться при подключении к базе данных: Аутентификация в базе данных или Аутентификация средствами операционной системы .
    • Если вы выберете Аутентификация средствами операционной системы, вам не потребуется вводить имя пользователя и пароль – подключение будет создано с помощью имени пользователя и пароля, которые используются для входа в операционную систему. Если имя пользователя, которое используется для входа в операционную систему, не является корректным именем пользователя базы данных, подключение не будет установлено. Помните, что вы не можете использовать аутентификацию средствами операционной системы с Oracle Instant.
      Примечание:

      При использовании аутентификации операционной системы в Oracle используется логин операционной системы с префиксом os_authent_prefix (по умолчанию, OPS$), который сохраняется в таблице USERNAME. Максимальное количество символов в имени пользователя при подключении к базе геоданных равно 30. В этом конкретном случае ArcGIS разместит двойные кавычки вокруг имени пользователя, чтобы допустить его к базе данных. Эти кавычки входят в число 30 допустимых знаков.

    • Если вы выбираете Аутентификация в базе данных, вы должны ввести корректные имя пользователя и пароль в текстовых полях Имя пользователя и Пароль соответственно. Имена пользователей могут иметь длину не более 30 символов.

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

    Примечание:

    Опция Сохранять имя пользователя и пароль должна быть включена для файлов подключения, обеспечивающих сервисам ArcGIS доступ к базе данных, либо, если вы хотите найти данные ArcGIS Pro, полученные через этот файл подключения.

  5. Нажмите OK для подключения.

Подключение из ArcMap

Чтобы подключиться к базе данных или геоданных в Oracle из ArcMap, установите 32-разрядный клиент Oracle на компьютер с ArcMap, задайте переменную среды PATH в соответствии с расположением клиента Oracle и создайте файл подключения в дереве Каталога.

Установите клиент Oracle

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

Примечание:

Если вы подключаетесь из 32-разрядного клиента ArcGIS, вы должны установить 32-разрядный клиент Oracle. Это справедливо даже в том случае, если вы устанавливаете приложение клиента ArcGIS на компьютер с 64-разрядной операционной системой, и база данных и операционные системы сервера являются 64-разрядными.

Следуйте инструкциям в документации Oracle, чтобы получить клиент Oracle Instant, Runtime, или Administrator с Oracle и установить его на клиентский компьютер.

Задание переменной среды PATH

Задайте переменную среды PATH на компьютере с ArcMap в соответствии с местом установки клиента Oracle. Подробные инструкции по заданию переменной PATH см. в документации Microsoft Windows.

Если ArcMap работал до изменения переменной PATH, перезапустите ArcMap, чтобы использовать новые параметры.

Подключение к базе данных

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

  1. Разверните папку Подключения баз данных в дереве Каталога в ArcMap или ArcCatalog и щелкните дважды на Добавить подключение базы данных.
  2. В раскрывающемся списке Платформа базы данных выберите Oracle.
  3. Либо введите имя Oracle TNS в поле Экземпляр либо задайте одну из следующих строк Oracle Easy Connect:
    • Имя сервера Oracle /сервиса Oracle или ID

      Например, если Oracle установлен на myserver, и имя сервиса Oracle – myosvc, введите следующее:

      myserver/myosvc

    • Имя сервера Oracle:номер порта Oracle/имя или ID сервиса Oracle

      В этом примере Oracle установлен на myserver, использует порт 60000, а имя сервиса Oracle - myoservice.

      myserver:60000/myoservice

    • URL-адрес сервера Oracle

      URL для такого же случая, как в последнем примере, был бы следующим:

      //myserver:60000/myoservice

    • Имя сервера Oracle (вы можете использовать его в том случае, если приемник Oracle на сервере настроен на указание экземпляра по умолчанию).
    • IP-адрес сервера Oracle /сервиса Oracle или ID

      Например, если адрес сервера 10:10:10:10, а имя сервера Oracle – orasvc, введите 10:10:10:10/orasvc.

      Для адресов IPV6, поместите адрес в скобки, например, [4000:ab5:0:0:f666:d191:77f5:e2bd]/orasvc.

    • IP-адрес сервера Oracle: номер порта Oracle/имя или ID сервиса Oracle

      В этом примере IP-адрес 10:20:30:40, порт 59999, а сервис Oracle – myomy1: 10:20:30:40:59999/myomy1.

      IPV6-адрес для такого же порта и сервиса выглядел бы следующим образом: [6543:ef4:0:1:f587:l249:12f9:a3cd]:59999/myomy110:20:30:40:59999/myomy1.

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

  4. Выберите тип аутентификации, который будет использоваться при подключении к базе данных: Аутентификация в базе данных или Аутентификация средствами операционной системы .
    • Если вы выберете Аутентификация средствами операционной системы, вам не потребуется вводить имя пользователя и пароль – подключение будет создано с помощью имени пользователя и пароля, которые используются для входа в операционную систему. Если имя пользователя, которое используется для входа в операционную систему, не является корректным именем пользователя базы данных, подключение не будет установлено. Помните, что вы не можете использовать аутентификацию средствами операционной системы с Oracle Instant.
      Примечание:

      При использовании аутентификации операционной системы в Oracle используется логин операционной системы с префиксом os_authent_prefix (по умолчанию, OPS$), который сохраняется в таблице USERNAME. Максимальное количество символов в имени пользователя при подключении к базе геоданных равно 30. В этом конкретном случае ArcGIS разместит двойные кавычки вокруг имени пользователя, чтобы допустить его к базе данных. Эти кавычки входят в число 30 допустимых знаков.

    • Если вы выбираете Аутентификация в базе данных, вы должны ввести корректные имя пользователя и пароль в текстовых полях Имя пользователя и Пароль соответственно. Имена пользователей могут иметь длину не более 30 символов.

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

    Примечание:

    Опция Сохранять имя пользователя и пароль должна быть включена для файлов подключения, обеспечивающих сервисам ArcGIS доступ к базе данных, либо, если вы хотите найти данные ArcGIS Desktop, полученные через этот файл подключения.

    В следующем примере выполняется подключение к экземпляру oracl/dbdata Oracle с использованием аутентификации в базе данных.

    Пример подключения к Oracle с использованием строки Oracle Easy Connect

  5. Нажмите OK для подключения.

Файл создается в \\<computer_name>\Users\<user_name>\AppData\Roaming\ESRI\Desktop<release#>\ArcCatalog.

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

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

Подключение из ArcGIS Server

Если Oracle и ArcGIS Server находятся на разных серверах, установите 64-разрядный клиент Oracle на всех компьютерах сайта ArcGIS Server. На компьютерах Windows добавьте библиотеку клиента Oracle в переменную PATH.

Если ArcGIS Server установлен на серверах Linux, включите в скрипт init_user_param.sh, установленный с ArcGIS Server, информацию о клиенте и экземпляре Oracle и перезапустите ArcGIS Server.

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

Установите клиент Oracle

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

Получить клиент Oracle Instant, Runtime или Administrator Client можно от Oracle и установить его на компьютерах ArcGIS Server. Для установки клиента Oracle следуйте инструкциям, приведенным в вашей документации Oracle.

Установите переменную среды PATH (только в Windows)

Задайте переменную среды PATH для каждого сервера Windows с ArcGIS Server в соответствии с местом установки клиента Oracle. Подробные инструкции по заданию переменной PATH см. в документации Microsoft Windows.

Если ArcGIS Server был запущен перед настройкой клиента Oracle и настройкой переменной среды PATH, необходимо перезапустить ArcGIS Server. Перезапуск ArcGIS Server можно выполнить из интерфейса Windows Службы.

После скрипта init_user_param.sh (только в Linux)

После установки файлов клиента базы данных, измените скрипт init_user_param.sh, установленный с ArcGIS Server, чтобы он включал ссылки на файлы клиента. Этот скрипт находится в директории <ArcGIS Server installation directory>/arcgis/server/usr.

Примечание:

Если ваш профиль пользователя ссылается на клиент Oracle, и информация клиента отличается от того, что указано в профиле пользователя и в init_user_param.sh, то ArcGIS Server может столкнуться с проблемами при попытке подключения к базе данных. Во избежание проблем с подключением удалите информацию о клиенте из профиля пользователя и повторно добавьте пути к библиотекам клиента базы данных, выполнив следующие шаги:

  1. Убедитесь, что у владельца установки ArcGIS Server на каждом компьютере есть права доступа к библиотекам клиента базы данных как минимум для чтения и выполнения.
  2. В текстовом редакторе откройте скрипт init_user_param.sh.
  3. Удалите знаки комментария (#) в строках, начиная с export.

    Если вы установили клиента Oracle Administrator, Developer или Runtime, удалите символы комментирования со всех строк Oracle, начинающихся с export.

    #
    # To connect to Oracle
    #
    export ORACLE_BASE=<Oracle_Installdir>/app
    export ORACLE_HOME=$ORACLE_BASE/<Oracle_Release>/product/<Oracle_Version>/client_1
    export ORACLE_SID=<set when applicable>
    export TNS_ADMIN=<set when applicable. e.g.$ORACLE_HOME/network/admin>
    export PATH=$ORACLE_HOME/bin:$PATH
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

    Если вы используете библиотеки клиента базы данных Oracle Instant, необходимо только раскомментировать и задать $LD_LIBRARY_PATH, например

    #
    # To connect with Oracle Instant Client
    #
    export LD_LIBRARY_PATH=<Location_to_instantclient>:$LD_LIBRARY_PATH

  4. Введите значения для переменных экспорта.
    • Для Oracle Administrator, Developer или Runtime удалите символы комментирования и задайте следующие переменные, в соответствии с параметрами вашей системы:
      • ORACLE_BASE=<Oracle_Installdir>

        <Oracle_Installdir> – это путь и имя директории верхнего уровня, в которой установлен Oracle.

      • ORACLE_HOME=$ORACLE_BASE/<Oracle_Release>/product/<Oracle_Version>/client_1

        Это путь к файлам библиотеки клиента Oracle. Задайте для ORACLE_HOME директорию, в которой они находятся. По умолчанию имя директории client_1, но у вас может использоваться другое имя.

      • Если вы будете использовать для подключения Oracle system ID (SID), задайте ORACLE_SID= в соответствии с Oracle system ID вашей базы данных. Если вы будете использовать для подключения Easy Connect, закомментируйте эту строку.
      • Задайте TNS_ADMIN= в соответствии с расположением файлов администрирования TNS клиента Oracle. Если вы будете использовать для подключения Easy Connect, вам не понадобится это значение, эту строку необходимо закомментировать.
    • Для клиентов Oracle Instant раскомментируйте и задайте только переменную LD_LIBRARY_PATH, заменив <Location_to_instantclient> на путь к директории, в которой находятся файлы клиента Oracle Instant.
    • Если на одном сервере установлены ArcGIS Server и Oracle, необходимо раскомментировать и задать следующие переменные:
      • ORACLE_BASE=<Oracle_Installdir>

        <Oracle_Installdir> – это путь и имя директории верхнего уровня, в которой установлен Oracle.

      • ORACLE_HOME=$ORACLE_BASE/<Oracle_Release>/product/<Oracle_Version>/client_1

        Это путь к файлам библиотеки клиента Oracle. Задайте для ORACLE_HOME директорию, в которой они находятся. По умолчанию имя директории db_<n>, но у вас может использоваться другое имя.

      • Если вы будете использовать для подключения Oracle system ID (SID), задайте ORACLE_SID= в соответствии с Oracle system ID вашей базы данных. Если вы будете использовать для подключения Easy Connect, закомментируйте эту строку.
      • Задайте TNS_ADMIN= в соответствии с расположением файлов администрирования TNS клиента Oracle. Если вы будете использовать для подключения Easy Connect, вам не понадобится это значение, эту строку необходимо закомментировать.
  5. Сохраните и закройте скрипт.
  6. После настройки init_user_param.sh на каждом компьютере вашего сайта ArcGIS Server, запустите скрипт startserver.sh для перезапуска ArcGIS Server.

    ./startserver.sh

Регистрация базы данных

Если вы хотите, чтобы веб-сервисы использовали данные из вашей базы данных Oracle или базы геоданных в Oracle, зарегистрируйте ее на сайтах ArcGIS Server. См. раздел Управление зарегистрированными хранилищами данных в справочной системе ArcGIS Pro, Регистрация ваших данных на ArcGIS Server в Server Manager или Добавление элементов в руководстве пользователя портала ArcGIS Enterpriseдля получения инструкций.