Подключения баз данных в ArcGIS for Desktop
Вы можете подключиться к базам данных из ArcGIS для просмотра, отправки запросов и анализа данных, которые они содержат. Некоторые базы данных, к которым вы получаете доступ, могут (но не обязательно) содержать таблицы баз геоданных, функции и процедуры; вы можете подключиться к любой поддерживаемой базе данных и просмотреть данные из ArcGIS for Desktop.
Ко всем поддерживаемым базам данных, кроме SQLite, можно подключаться, добавив подключение к базе данных в разделе Подключения баз данных в дереве каталогов ArcGIS for Desktop. При этом на клиентском компьютере создается файл, содержащий информацию о подключении к соответствующей базе данных. По умолчанию этот файл находится в \\<computer_name>\Users\<user_name>\AppData\Roaming\ESRI\Desktop<release#>\ArcCatalog, но вы можете перенести его в другое место. Обязательно убедитесь, что пользователи и приложения, которым требуется создать подключение, имеют право на просмотр информации в папке, куда вы поместили файл подключения.
Если вы используете данные из этого подключения в качестве источника для таких сервисов, как геообработка или геокодирование, возможно, потребуется поместить файл подключения в папку с общим сетевым доступом. Для получения дополнительных сведений о предоставлении общего доступа к файлу подключения см. раздел Подготовка ресурсов для публикации в качестве сервиса.
Если у вас имеются файлы подключения, созданные до версии 10.1, они все равно будут работать. Но если вам нужно создать новое подключение к базе геоданных с помощью сервиса ArcSDE, используйте инструмент геообработки Создать файл подключения ArcSDE (Create ArcSDE Connection File).
При подключении к базе данных выберите тип базы данных, к которой подключаетесь, затем введите информацию, необходимую ArcGIS для того, чтобы найти базу данных и информацию для аутентификации, позволяющую вам войти в базу данных.
Платформа базы данных и свойства
Значение, выбранное из ниспадающего меню Платформа базы данных (Database Platform), определяет тип базы данных, к которой вы хотите подключиться. Поля, доступные в диалоговом окне, и, следовательно, информация, введенная вами для создания подключений, зависят от типа платформы базы данных, которую вы выбрали.
Ниже объясняется, в каких случаях и какую платформу базы данных выбрать, и какая дополнительная информация необходима для подключения:
DB2
Выберите DB2 из ниспадающего меню Платформа базы данных (Database Platform), чтобы подключиться к базе данных IBM DB2 на Linux, UNIX или Windows server; или подключиться напрямую к базе геоданных в базе данных DB2 на Linux, UNIX или Windows server.
При подключении к DB2 необходимо ввести имя каталогизированной базы данных DB2 в текстовом окне Источник данных (Datasource). Или, если база данных не каталогизирована, можно использовать следующее выражение для подключения:
HostName=<хост>;Port=<номер порта>;Database=<имя базы данных>;
Укажите информацию, соответствующую вашему сайту. Например, если ваша база данных DB2 расположена на сервере cube, взаимодействие с которым осуществляется посредством СУБД через порт 50000, а имя базы данных – spdata, строка подключения должна выглядеть следующим образом:
HostName=cube;Port=50000;Database=spdata;
Этот тип подключения называется DSNLESS-соединение.
Вы не сможете использовать подключение без DNS при включенной поддержке базы геоданных или обновлении базы геоданных.
DB2 для z/OS
Выберите DB2 для z/OS (DB2 for z/OS) из ниспадающего меню Платформа базы данных (Database Platform), чтобы подключиться к подсистеме базы данных DB2 в операционной системе z (z/OS) или к базе геоданных в подсистеме базы данных DB2 на z/OS.
При подключении к подсистеме базы данных DB2 для z/OS необходимо ввести имя каталогизированной подсистемы базы данных DB2 в текстовом окне Источник данных (Datasource).
Если подсистема базы данных не каталогизирована, можно использовать строку подключения, приведенную описано выше в абзаце о подключении к DB2.
Informix
Выберите Informix из ниспадающего меню Платформа базы данных (Database Platform), чтобы подключиться к базе данных IBM Informix или подключиться напрямую к базе геоданных в базе данных Informix.
При подключении к Informix необходимо ввести имя источника базы данных Open Database Connectivity (ODBC) в текстовом окне Источник данных (Datasource).
Если имя источника данных ODBC не настроено, для подключения можно использовать следующий синтаксис:
HostName=<сервер, где установлен Informix>;ServerName=<сервер Informix>;ServiceName=<имя сервиса, заданное в файле сервисов>;Database=<имя базы данных Informix>
Укажите информацию, соответствующую вашему сайту. Например, если ваша версия Informix расположена на сервере hirise, ее именем является superids, взаимодействие осуществляется через порт 54321, а имя базы данных – gisdata, то строка подключения будет выглядеть следующим образом:
HostName=hirise;ServerName=superids;ServiceName=54321;Database=gisdata
Этот тип подключения называется DSNLESS-соединение.
Даже если для того, чтобы использовать DSNLESS-соединение, вам не нужно настраивать источник данных ODBC, вы все равно должны зарегистрировать сервер Informix через SetNet32. Также помните что нельзя использовать подключение без DNS, если вы хотите включить функциональность базы геоданных в базу данных Informix или обновить базу геоданных.
Netezza
Выберите Netezza из ниспадающего меню Платформа базы данных (Database Platform), чтобы подключиться к базе данных в устройстве хранилища данных Netezza.
При подключении к базе данных Netezza необходимо ввести имя источника базы данных ODBC для базы данных Netezza в текстовом окне Источник данных (Datasource).
Если имя источника данных ODBC не настроено, для подключения можно использовать следующий синтаксис:
ServerName=<хост>;Port=<номер порта>;Database=<имя базы данных>
Укажите информацию, соответствующую вашему сайту. Например, если устройство хранения данных Netezza расположено на сервере ndwa, взаимодействие осуществляется через порт 5480, а имя базы данных – spatial, то строка подключения должна выглядеть следующим образом:
ServerName=ndwa;Port=5480;Database=spatial
Oracle
Выберите Oracle из ниспадающего меню Платформа базы данных (Database Platform), чтобы подключиться к базе данных Oracle или подключиться напрямую к базе геоданных в базе Oracle.
При подключении к Oracle либо введите имя Oracle TNS в поле Экземпляр (Instance), либо задайте одну из следующих строк 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:vu5:0:0:f666:h191:77f5:i2rs]/orasvc
- IP-адрес сервера Oracle: номер порта Oracle/имя или ID сервиса Oracle
В этом примере IP-адрес 10:20:30:40, порт 59999, а сервис Oracle – myomy1: 10:20:30:40:59999/myomy1.
IPV6-адрес для такого же порта и сервиса выглядел бы следующим образом: [6543:eo4:0:1:f587:l249:12f9:w3ud]:59999/myomy110:20:30:40:59999/myomy1
Убедитесь, что ваш экземпляр Oracle разрешает Easy Connect. Если у вас установлен полный клиент Oracle, а вы хотите использовать для подключения синтаксис Easy Connect, убедитесь, что файл sqlnet.ora клиента настроен на разрешение использования Easy Connect, а сервер Oracle разрешает синтаксис Easy Connect. Помните, что если ваш экземпляр Oracle не использует номер порта Oracle, принятый по умолчанию, необходимо включить номер порта в синтаксис подключения.
PostgreSQL
Выберите PostgreSQL из ниспадающего меню Платформа базы данных (Database Platform), чтобы подключиться к базе данных PostgreSQL или подключиться напрямую к базе геоданных в базе PostgreSQL.
При подключении к PostgreSQL необходимо задать экземпляр и базу данных.
Экземпляр – это имя или IP-адрес сервера, где установлен. Например, если кластер вашей базы данных PostgreSQL размещен на сервере ficus, введите ficus в текстовом окне Экземпляр (Instance). При задании IPV6-адреса заключите адрес в квадратные скобки. Например, если IPV6-адрес сервера 1111:aa1:0:1:f111:a222:33f3:b4bb, введите [1111:aa1:0:1:f111:a222:33f3:b4bb] в текстовом окне Экземпляр (Instance).
Если кластер вашей базы данных PostgreSQL использует порт, отличный от заданного по умолчанию (5432), включите номер порта в экземпляр. Например, если PostgreSQL установлен на сервере mamabear и использует порт 49200, введите mamabear,49200 в текстовом окне Экземпляр (Instance).
В поле Имя базы данных (Database name) введите имя базы данных, к которой вы хотите подключиться. Имя базы данных можно ввести в текстовом окне База данных (Database) или выбрать его из ниспадающего меню. Длина имени базы данных ограничена 31 символом.
Teradata
Для подключения к базе данных Teradata выберите Teradata в ниспадающем списке Платформа базы данных (Database Platform).
При подключении к Teradata необходимо ввести имя источника данных ODBC в поле Источник данных (Data Source). Если имя источника данных ODBC не задано, можно указать IP-адрес сервера Teradata в формате dbcName=<IP-адрес>. Например, если сервер имеет IPV4 адрес 200.30.200.10, введите dbcName=200.30.200.10. Если сервер имеет IPV6 адрес, заключите его в квадратные скобки. Например, для сервера с IPV6 адресом 3020:12z3:y4xw:5099:0:v678:u111:ts22, введите dbcName=[3020:12z3:y4xw:5099:0:v678:u111:ts22].
Также следует использовать аутентификацию средствами базы данных и указать корректные имя пользователя и пароль. Аутентификация средствами ОС не поддерживается.
Тип аутентификации
Существует два варианта входа в систему для создания подключения к базе данных или многопользовательской базе геоданных: аутентификация в базе данных и аутентификация средствами операционной системы.
Аутентификация в базе данных
Если вы выбираете Аутентификация в базе данных (Database authentication), вы должны ввести корректные имя пользователя и пароль в текстовых полях Имя пользователя (User name) и Пароль (Password) соответственно. Имена пользователей могут иметь длину не более 30 символов.
Вне ArcGIS вы можете создать имена пользователей SQL Server, содержащие специальные символы. Такие имена пользователей при использовании должны разделяться. ArcGIS автоматически добавляет разделитель при передаче в SQL Server; вам не нужно вводить разделители в имя пользователя. Например, ели используется имя пользователя map.user, введите map.user, а не "map.user" в поле Имя пользователя (User name). Для получения более подробной информации об обычных и сложных идентификаторах обратитесь к документации к SQL Server.
Снимите отметку с опции Сохранять имя пользователя и пароль (Save user name and password), если вы предпочитаете не сохранять свои данные для входа в качестве части соединения; такие действия помогут обеспечить безопасность базы данных. Однако в этом случае при каждом подключении вы должны будете вводить имя пользователя и пароль. Помните, что опция Сохранять имя пользователя и пароль (Save user name and password) должна быть включена для файлов подключения, обеспечивающих сервисам ArcGIS доступ к базе данных или базе геоданных, либо, если вы хотите использовать поиск Каталога, для того, чтобы найти данные, полученные через этот файл подключения.
Аутентификация средствами операционной системы
Если вы выберете Аутентификация средствами операционной системы (Operating system authentication), вам не потребуется вводить имя пользователя и пароль – подключение будет создано с помощью имени пользователя и пароля, которые используются для входа в операционную систему. Если имя пользователя, которое используется для входа в операционную систему, не является корректным именем пользователя базы данных, подключение не будет установлено. Некоторые системы управления базами данных не поддерживают аутентификацию средствами ОС.
При использовании аутентификации операционной системы в Oracle используется логин операционной системы с префиксом os_authent_prefix (по умолчанию, OPS$) и сохраняется в таблице USERNAME. Максимально допустимое число знаков символов в имени пользователя при подключении к базе геоданных равно 30. В отдельных случаях, для передачи в базу данных ArcGIS заключает имя пользователя в кавычки. Эти кавычки также входят в число 30 допустимых знаков.