It is likely that some of the clients connecting to your Informix engine will run on a different server than the engine. Enabling a remote server for Informix connections is a simple three step process of setting up some environment variables, installing the free Informix Connect product and creating a sqlhosts file.
Create INFORMIXDIR
We need to create an INFORMIXDIR to hold our Connect install. This is very similar to what we did with the engine install, except I like to name the INFORMIXDIR /opt/informix-connect to instead of just /opt/informix.
root> mkdir /opt/informix-connect-3.50.FC7 root> chown informix:informix /opt/informix-connect-3.50.FC7 root> ln -s /opt/informix-connect-3.50.FC7 /opt/informix-connect root> ls -ltr /opt total 4 drwxr-xr-x 2 informix informix 4096 Aug 1 20:56 informix-connect-3.50.FC7 lrwxrwxrwx 1 root root 30 Aug 1 20:56 informix-connect -> /opt/informix-connect-3.50.FC7
Setup Environment Variables
As with the engine install we create a script to automatically set the necessary environment variables.
root> vi /etc/profile.d/informix.sh
# informix client environment variables
# location of informix installation
export INFORMIXDIR=/opt/informix-connect
# sqlhosts file definition
export INFORMIXSQLHOSTS=${INFORMIXDIR}/etc/sqlhosts
# default dbserver name
export INFORMIXSERVER=blogsvr01
# location of informix libraries
export LD_LIBRARY_PATH=${INFORMIXDIR}/lib:${INFORMIXDIR}/lib/esql:${INFORMIXDIR}/lib/toolsNotice that some environment variables are not needed on the client but a new one is. LD_LIBRARY_PATH tells a client where to find any Informix libraries it needs.Install Informix Connect
Download Informix Connect from IBM, the file will be called connect.3.50.FC7.LINUX.tar or something similar. As root (with the environment variables from informix.sh set) untar and run installconn to install. Accept the License Agreement (if you want to) and use the defaults supplied in the install script, being sure to install in /opt/informix-connect.
root> . /etc/profile.d/informix.sh root> tar -xvf connect.3.50.FC7.LINUX.tar conn.jar ./doc . . . installconn conn.ini .jvm.bin root> ./installconn ------------------------------------------------------------------------------- Welcome to the InstallShield Wizard for IBM Informix IConnect Version 3.50 The InstallShield Wizard will install IBM Informix IConnect Version 3.50 on your computer. . . . ------------------------------------------------------------------------------- The InstallShield Wizard has successfully installed IBM Informix IConnect Version 3.50. Choose Finish to exit the wizard. Press 3 to Finish or 4 to Redisplay [3]
Add the idstcp01 Port and Create the sqlhosts File
Modify the /etc/services file to add the TCP/IP port that our server is listening on.
root> vi /etc/services idstcp01 1526/tcp # InformixThe client needs to know how to connect to your server and the sqlhosts file is where put the information it needs. This will be very similar to the sqlhosts file we created for the engine.
informix> vi $INFORMIXSQLHOSTS # blogsvr01 blogsvr01 onsoctcp blogsvr01 idstcp01And that should just about do it. It's all over but the testing. I like to use Python myself (you'll need Python and the informixdb module installed for the following to work) since dbaccess only comes with the engine (why?)
informix> python
Python 2.4.3 (#1, Sep 17 2008, 16:07:08)
[GCC 4.1.2 20071124 (Red Hat 4.1.2-41)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import informixdb
>>> dbCon = informixdb.connect("blog@blogsvr01", "informix", "n0tT311ing")
>>> dbCon
<_informixdb.Connection object at 0x2b740f5fd580>
No comments:
Post a Comment