Можно подключиться к Oracle из клиентов ArcGIS. Для этого установите клиентское приложение Oracle на компьютере с клиентом ArcGIS, задайте переменные среды, которые ссылаются на клиента Oracle и подключитесь к базе данных из клиента ArcGIS.
После настройки клиента, создайте файл подключения. Чтобы использовать данные Oracle в сервисах, опубликованных на ArcGIS Server, вы также должны зарегистрировать базу данных или базу геоданных на ГИС-сервере.
Подключение из ArcMap
Чтобы подключиться к базе данных или геоданных в Oracle из ArcMap, установите клиента Oracle на компьютер с ArcMap, задайте переменные среды PATH в соответствии с расположением клиента Oracle и создайте файл подключения в дереве Каталога.
Установка клиента Oracle
Чтобы выполнить подключение клиентского компьютера к базе данных Oracle, на клиентском компьютере необходимо установить клиентское приложение Oracle. Убедитесь, что вы устанавливаете именно ту версию клиентского приложения Oracle, которая совместима с версией базы данных, к которой вы должны подключиться.
Следуйте инструкциям в документации Oracle, чтобы получить клиент Oracle Instant, Runtime, или Administrator и установить его на клиентский компьютер.
Задание переменной среды PATH
Задайте переменную среды PATH на сервере Windows с ArcMap в соответствии с местом установки клиента Oracle. Подробные инструкции по заданию переменной PATH см. в документации Microsoft Windows.
Если ArcMap работал до изменения переменной PATH, перезапустите ArcMap, чтобы использовать новые параметры.
Подключение к базе данных
К базе данных или базе геоданных в Oracle можно подключиться, если добавить подключение базы данных в узел Подключения баз данных в дереве Каталога в ArcMap или ArcCatalog.
- Разверните папку Подключения баз данных в дереве Каталога в ArcMap или ArcCatalog и дважды щелкните Добавить подключение базы данных.
- В раскрывающемся списке Платформа базы данных выберите Oracle.
- При подключении к Oracle либо введите имя Oracle TNS в поле Экземпляр, либо задайте одну из следующих строк Oracle Easy Connect:
- Имя сервера Oracle/Имя или ID сервиса Oracle
Например, если Oracle установлен на myserver, и имя сервиса Oracle – myosvc, введите следующее:
myserver/myosvc
- Имя сервера Oracle:Номер порта Oracle/Имя или ID сервиса Oracle
В этом примере Oracle установлен на myserver, использует порт 60000, а имя сервиса Oracle – myoservice.
myserver:60000/myoservice
- Адрес сервера Oracle
URL для такого же случая, как в последнем примере, был бы следующим:
//myserver:60000/myoservice
- Имя сервера Oracle (Вы можете использовать его в том случае, если приемник Oracle на сервере настроен на указание экземпляра по умолчанию.)
- IP-адрес сервера Oracle/имя или ID сервиса Oracle
Например, если адрес сервера 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, принятый по умолчанию, необходимо включить номер порта в синтаксис подключения.
- Имя сервера Oracle/Имя или ID сервиса Oracle
- Выберите тип аутентификации, который будет использоваться при подключении к базе данных: Аутентификация в базе данных или Аутентификация средствами операционной системы .
- Если вы выберете Аутентификация средствами операционной системы, вам не потребуется вводить имя пользователя и пароль – подключение будет создано с помощью имени пользователя и пароля, которые используются для входа в операционную систему. Если имя пользователя, которое используется для входа в операционную систему, не является корректным именем пользователя базы данных, подключение не будет установлено. Помните, что вы не можете использовать аутентификацию средствами операционной системы с клиентом Oracle Instant.
Если вы выбираете Аутентификация в базе данных, вы должны ввести корректные имя пользователя и пароль в текстовых полях Имя пользователя и Пароль соответственно. Имена пользователей могут иметь длину не более 30 символов.
Снимите отметку с опции Сохранять имя пользователя и пароль, если вы предпочитаете не сохранять свои данные для входа в качестве части соединения; такие действия помогут обеспечить безопасность базы данных. Однако в этом случае при каждом подключении вы должны будете вводить имя пользователя и пароль. Помните, что опция Сохранять имя пользователя и пароль должна быть включена для файлов подключения, обеспечивающих сервисам ArcGIS доступ к базе данных или базе геоданных, либо, если вы хотите использовать поиск Каталога, для того, чтобы найти данные, полученные через этот файл подключения.
В следующем примере выполнено подключение к экземпляру Oracle oracl/dbdata с использованием аутентификации в базе данных.
- Нажмите OK для подключения.
Файл создается в \\<computer_name>\Users\<user_name>\AppData\Roaming\ESRI\Desktop<release#>\ArcCatalog. При возникновении каких-либо проблем с подключением просмотрите подробные сообщения об ошибках в файле sdedc_Oracle.log в директории %TEMP%.
Вы можете переместить файл подключения в другое место, но предварительно убедившись, что пользователи и приложения, которым потребуется подключение, имеют права чтения информации в директории, куда вы хотите его переместить.
Если вы используете данные из этого подключения в качестве источника для таких сервисов, как геообработка или геокодирование, возможно, потребуется поместить файл подключения в папку с общим сетевым доступом. Для получения дополнительных сведений о предоставлении общего доступа к файлу подключения см. раздел Подготовка ресурсов для публикации в качестве сервиса.
Подключение к базе геоданных с пользовательской схемой или другой версии
При первоначальном подключении к базе геоданных вы подключаетесь к версии DEFAULT главной базы геоданных sde. Если вы хотите подключиться к базе геоданных с пользовательской схемой, к версии, отличной от Default, или к исторической версии, используйте диалоговое окно Свойства подключения баз геоданных. Помните, что базы геоданных с пользовательской схемой в диалоговом окне обозначаются как транзакционные версии. Более подробно см. Подключение к определенной версии базы геоданных.
Подключение из ArcGIS for Server
Если Oracle и ArcGIS for Server находятся на разных серверах, установите 64-разрядного Oracle клиента на компьютере с ArcGIS for Server.
Если ArcGIS for Server установлен на сервере с ОС Linux, включите в скрипт init_user_param.sh информацию о клиенте и экземпляре Oracle и перезапустите ArcGIS for Server.
Если вы хотите использовать в сервисах, которые вы публикуете в ArcGIS Server, данные из вашей базы данных Oracle, необходимо зарегистрировать такую базу данных на ГИС-сервере.
Установка клиента Oracle
Если ArcGIS for Server и Oracle установлены на разных серверах, необходимо установить клиентское приложение Oracle на компьютере с ArcGIS for Server. Убедитесь, что вы устанавливаете именно ту версию клиентского приложения Oracle, которая совместима с версией базы данных, к которой вы должны подключиться.
Следуйте инструкциям в документации Oracle, чтобы получить клиент Oracle Instant, Runtime, или Administrator и установить его на клиентский компьютер.
Установите переменную среды PATH (только в Windows)
Задайте переменную среды PATH на сервере Windows с ArcGIS for Server в соответствии с местом установки клиента Oracle. Подробные инструкции по заданию переменной PATH см. в документации Microsoft Windows.
Если перед настройкой клиента Oracle и переменной PATH на компьютере был запущен ArcGIS Server, его необходимо перезапустить. Перезапуск ArcGIS Server можно выполнить из интерфейса Сервисы Windows.
Измените скрипт init_user_param.sh (только Linux)
После установки файлов клиента базы данных включите ссылку на них в скрипт init_user_param.sh. Этот скрипт находится в директории <ArcGIS Server installation directory>/arcgis/server/usr.
- Убедитесь, что у владельца установки ArcGIS Server есть права доступа к библиотекам клиента базы данных как минимум для чтения и выполнения.
- В текстовом редакторе откройте скрипт init_user_param.sh.
- Удалите знаки комментария (#) в строках, начиная с 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
- Введите значения для переменных экспорта.
- Для 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 for 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, вам не понадобится это значение, эту строку необходимо закомментировать.
- Для Oracle Administrator, Developer или Runtime, удалите символы комментирования и задайте следующие переменные, в соответствии с параметрами вашей системы:
- Сохраните и закройте скрипт.
- Перезапустите все ГИС-серверы в системе ArcGIS Server, выполнив скрипт startserver.sh.
./startserver.sh
Регистрация базы данных
Если вы хотите использовать в ваших веб-сервисах данные из вашей базы данных Oracle или базы геоданных в Oracle, зарегистрируйте ее в ArcGIS Server. Для баз геоданных Oracle есть две опции регистрации. В разделе О регистрации данных на сервере можно найти информацию об опциях регистрации и ссылки на разделы справки с инструкциями по регистрации базы данных.