Подключение к базе данных в ArcGIS for Desktop

Вы можете подключиться к базам данных из ArcGIS для просмотра, отправки запросов и анализа данных, которые они содержат. Базы данных, к которым вы получаете доступ, могут (не обязательно) содержать таблицы баз геоданных, функции и процедуры; вы можете подключиться к любой поддерживаемой базе данных и просмотреть данные из ArcGIS for Desktop.

При добавлении подключения к базе данных под узлом Подключения баз данных (Database Connections) в дереве каталога (Catalog tree) ArcGIS for Desktop на клиентском компьютере создается файл, содержащий информацию о подключении к соответствующей базе данных. По умолчанию этот файл расположен по адресу \\<имя_компьютера>\Пользователи\<имя_пользователя>\AppData\Roaming\ESRI\Desktop<номер_версии>\ArcCatalog, но подключение можно переместить и в другое место. Обязательно убедитесь, что пользователи, которым требуется создать подключение, имеют право на просмотр информации в папке, куда вы поместили файл подключения.

ПодсказкаПодсказка:

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

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

Пример подключения к базе данных

ПодсказкаПодсказка:

Используйте инструмент геообработки Создать файл подключения ArcSDE (Create ArcSDE Connection File)для подключения к многопользовательской базе геоданных с помощью сервиса ArcSDE.

Платформа базы данных и свойства

Значение, выбранное из ниспадающего меню Платформа базы данных (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 server>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 в Windows убедитесь, что выбрана опция Оптимизировать для набора знаков ASCII (Optimize for ASCII character set). При установке источника данных ODBC в Linux укажите для CharacterTranslationOption latin9, а для UnicodeTranslationOption – utf16.

Если имя источника данных ODBC не настроено, для подключения можно использовать следующий синтаксис:

ServerName=<хост>;Port=<номер порта>;Database=<имя базы данных>

Укажите информацию, соответствующую вашему сайту. Например, если устройство хранения данных Netezza расположено на сервере ndwa, взаимодействие осуществляется через порт 5480, а имя базы данных – spatial, то строка подключения должна выглядеть следующим образом:

ServerName=ndwa;Port=5480;Database=spatial

Oracle

Выберите Oracle из ниспадающего меню Платформа базы данных (Database Platform), чтобы подключиться к базе данных Oracle или подключиться напрямую к базе геоданных в базе Oracle.

При подключении к Oracle введите одну из следующих строк Oracle Easy Connect в текстовое окно Экземпляр (Instance):

  • Имя сервера 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, принятый по умолчанию, необходимо включить номер порта в синтаксис подключения.

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

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 символом.

SQL Server

Выберите SQL Server в ниспадающем списке Платформа базы данных (Database Platform) для подключения к базе данных в Microsoft SQL Server или Windows Azure SQL, либо непосредственно подключитесь к базе геоданных базы данных SQL Server.

При подключении к SQL Server или SQL Database необходимо задать экземпляр и базу данных.

Экземпляр – это имя экземпляра SQL Server или SQL Database. Например, если имя вашего экземпляра SQL Database – cloudy4u.database.windows.net, введите cloudy4u.database.windows.net в текстовом окне Экземпляр (Instance). Если вы работаете с экземпляром SQL Server terra\gis, введите terra\gis в текстовом окне Экземпляр (Instance).

При использовании экземпляра SQL Server по умолчанию укажите имя экземпляра или IP-адрес сервера в текстовом окне Экземпляр (Instance). При задании IPV6-адреса заключите адрес в квадратные скобки. Например, если IPV6-адрес сервера 2000:ab1:0:2:f333:c432:55f6:d7zz, введите [2000:ab1:0:2:f333:c432:55f6:d7zz] в текстовом окне Экземпляр (Instance).

Если ваша база данных использует порт, отличный от заданного по умолчанию (1433), включите номер порта в экземпляр. Например, если экземпляр SQL Server – basset\spatial, и он использует порт 61000, введите basset\spatial,61000 в текстовом окне Экземпляр (Instance).

База данных – это имя определенной базы данных на экземпляре SQL Server или SQL Database, к которой вы хотите подключиться. Имя базы данных можно ввести в текстовом окне База данных (Database) или выбрать его из ниспадающего меню. Длина имени базы данных ограничена 31 символом.

Вводить имя базы данных при подключении к экземпляру SQL Server необязательно, но только в том случае, если вы подключаетесь к базе данных, которая была назначена базой данных по умолчанию в экземпляре SQL Server. Имя базы данных требуется при подключении к SQL Database.

Тип аутентификации

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

Аутентификация в базе данных

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

Снимите отметку с опции Сохранять имя пользователя и пароль (Save user name and password), если вы предпочитаете не сохранять свои данные для входа в качестве части соединения; такие действия помогут обеспечить безопасность базы данных. Однако в этом случае при каждом подключении вы должны будете вводить имя пользователя и пароль. Помните, что опция Сохранять имя пользователя и пароль (Save user name and password) должна быть включена для файлов подключения, обеспечивающих сервисам ArcGIS доступ к базе данных или базе геоданных, либо, если вы хотите использовать поиск Каталога, для того, чтобы найти данные, полученные через этот файл подключения.

Аутентификация средствами операционной системы

Если вы выберете Аутентификация средствами операционной системы (Operating system authentication), вам не потребуется вводить имя пользователя и пароль – подключение будет создано с помощью имени пользователя и пароля, которые используются для входа в операционную систему. Если имя пользователя, которое используется для входа в операционную систему, не является корректным именем пользователя базы данных, подключение не будет установлено.

ПримечаниеПримечание:

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

Связанные темы

9/11/2013