You can connect to IBM Informix from ArcMap or ArcGIS Server. To do so, install and configure an Informix client application on the ArcGIS client machine to connect to a database or geodatabase in Informix from an ArcGIS client. You can configure an ODBC data source name for the Informix database and use that to connect, or you can use a DSNless connection string to connect.
To use your Informix data in services published to ArcGIS Server, create a service definition file and publish the file to the ArcGIS Server site.
Connect from ArcMap
To connect to a database or geodatabase in Informix from ArcMap, install the Informix Connect client on the ArcMap computer, register the Informix server through Setnet32 and create a connection file in ArcMap. You can use an ODBC data source name to connect—in which case you must configure the data source name before creating the connection—or you can provide a string of connection information.
Install the Informix client
An Informix client must be installed on any computer that will connect to an Informix database.
You can use your own Informix Client SDK or Connect installation, or download the Informix Connect (IConnect) client from My Esri. You must install a 32-bit Informix client to connect from ArcMap because it is a 32-bit application. This is true even if you are installing the client on a 64-bit operating system.
Follow the instructions provided with the Informix client software to install it.
Register the Informix server
You must register a default Informix server with the Informix Setnet application on the client machine. This is required even if you do not configure an ODBC data source.
See Set up the Informix Setnet32 application for more information.
Configure an ODBC data source name (optional)
You can configure an Informix ODBC data source name on the ArcMap computer and use that name to connect to Informix from ArcMap. If you do not configure an ODBC data source, you can still connect using a connection string that provides Informix server and database information.
For instructions on setting up a data source, see Set up an ODBC data source for Informix.
Connect to Informix
You can connect to a database or geodatabase in Informix by adding a database connection under the Database Connections node in the Catalog tree in ArcMap.
- Expand Database Connections in the Catalog tree in ArcMap or ArcCatalog and double-click Add Database Connection.
- Choose Informix from the Database Platform drop-down list.
- Type the ODBC data source name in the Datasource text box. Or, if you did not configure an ODBC data source name, you can use the following syntax to connect instead:
HostName=<server where Informix is installed>;ServerName=<Informix server>;ServiceName=<service name defined in services file>;Database=<Informix database name>
Specify the information appropriate for your site.
For example, if your Informix instance is on server hirise, the instance name is superids, it is communicating through port 54321, and the database name is gisdata, the connection string would be as follows:
HostName=hirise;ServerName=superids;ServiceName=54321;Database=gisdata
- Choose the type of authentication to use to when connecting to the database: Database authentication or Operating system authentication.
- If you choose Operating system authentication, you do not need to type a user name and password—the connection is made using the login name and password used to log in to the operating system. If the login used for the operating system is not a valid database login, the connection fails.
If you choose Database authentication, you must provide a valid database user name and password in the User name and Password text boxes, respectively. User names can be a maximum of 30 characters.
Uncheck Save user name and password if you prefer not to save your login information as part of the connection; doing this can help maintain the security of the database. However, if you do this, you will be prompted to provide a user name and password every time you connect. Also note that Save user name and password must be checked for connection files that provide ArcGIS services with access to the database or geodatabase, or if you want to use the Catalog search to locate data accessed through this connection file.
In the following example, a connection is made to an Informix database with an ODBC data source name of ids12db using database authentication:
- Click OK to connect.
A file is created in \\<computer_name>\Users\<user_name>\AppData\Roaming\ESRI\Desktop<release#>\ArcCatalog.
You can move the connection to another location, just be sure users and applications that need to make a connection have read access to the directory where you place the connection file.
If you use the data from this connection as the source for a service, such as a geoprocessing or geocoding service, you may need to place the connection file in a shared location on your network. See Make your data accessible to ArcGIS Server for more information about sharing a connection file.
(Geodatabase only) Connect to a specific geodatabase version
When you initially connect to a geodatabase in Informix, you connect to the Default version using the Database Connection dialog box. If you use geodatabase versioning and want to connect to a different transactional or historical version, change versions using the Geodatabase Connection Properties dialog box. For more information, see Connect to a specific geodatabase version.
Connect from ArcGIS Server
If Informix and ArcGIS Server are running on separate servers, install an Informix client on each machine in the ArcGIS Server site.
If ArcGIS Server is installed on a Linux server, edit the init_user_param.sh script installed with ArcGIS Server to include information about the Informix client and instance and restart ArcGIS Server.
If you want the services you publish to ArcGIS Server to use the data in your database or geodatabase in Informix, you must register the database with the ArcGIS Server site. You can use a data source name when registering the database—in which case you must create an ODBC data source before registering—or you can provide a string of connection information (referred to as a DSNless connection).
Install the Informix client
If ArcGIS Server is installed on a different server than the Informix database management system, you must install either Informix Client SDK or Connect on each ArcGIS Server machine in the site.
You can use your own Informix Client SDK or Connect installation, or download the Informix Connect (IConnect) client from My Esri. You must install a 64-bit Informix client to connect from ArcGIS Server.
Follow the instructions provided with the Informix client software to install it.
Configure an ODBC data source name (optional)
If you want to connect to Informix using a data source name (DSN), you can configure one on each machine where ArcGIS Server is installed. This is optional; if you do not have a data source name, you can connect to the Informix database using a string of connection information, which is referred to as a DSNless connection string. If your ArcGIS Server site contains multiple machines, configure the same data source name on each.
For instructions on creating a data source name, see Set up an ODBC data source for Informix.
Register the Informix server (Windows only)
If ArcGIS Server is installed on a Microsoft Windows server, register a default Informix server with the Informix Setnet application.
Alter the init_user_param.sh script (Linux only)
Once you have installed the database client files, alter the init_user_param.sh script to reference them. You can access this script by browsing to the <ArcGIS Server installation directory>/arcgis/server/usr directory.
- Ensure that the ArcGIS Server installation owner has at least read and execute permissions on the database client libraries.
- Open the init_user_param.sh script in a text editor.
- Remove the comment marks (#) from the lines beginning with export.
# # To connect to Informix # export INFORMIXDIR=<Informix_InstallDir> export INFORMIXSERVER=<Informix_Database_Server_Name> export INFORMIXSQLHOSTS=<Location_to_sqlhosts> export ODBCINI=<Location_to_.odbc.ini> export PATH=$INFORMIXDIR/bin:$PATH export LD_LIBRARY_PATH=$INFORMIXDIR/lib:$INFORMIXDIR/lib/cli:$INFORMIXDIR/lib/esql:$LD_LIBRARY_PATH
- Replace the following with information specific to your installation:
- Replace <Informix_InstallDir> with the installation for the Informix client (if ArcGIS Server is installed on a separate machine from the Informix database) or the Informix database management system installation directory (if ArcGIS Server and Informix are on the same machine.)
- Replace <Informix_Database_Server_Name> with the name of Informix server. This should match the server name you specified in the INFORMIXSQLHOSTS file.
- Replace <Location_to_sqlhosts> with the location and name of the INFORMIIXSQLHOSTS file on the ArcGIS Server machine.
- Replace <Location_to_.odbc.ini> with the location of the odbc.ini file on the ArcGIS Server machine. If you did not configure an ODBC data source, comment out this line.
In this example, ArcGIS Server and the Informix client are installed on gisserver and the Informix database is on dbserver.
# # To connect to Informix # export INFORMIXDIR=/gisserver/informix/CSDK/12.10.FC3 export INFORMIXSERVER=dbserver export INFORMIXSQLHOSTS=/home/informix/sqlhosts export ODBCINI=/gisserver/informix/odbc.ini export PATH=$INFORMIXDIR/bin:$PATH export LD_LIBRARY_PATH=$INFORMIXDIR/lib:$INFORMIXDIR/lib/cli:$INFORMIXDIR/lib/esql:$LD_LIBRARY_PATH
- Save and close the script.
- Restart ArcGIS Server on each machine in your site by running the startserver.sh script.
./startserver.sh
Publish services that reference the database
If you want your web services to use the data in your Informix database or a geodatabase in Informix, you must create a service definition file, uncheck the option to Include data in service definition when publishing, and then publish the file to an ArcGIS Server site.