Informix Dynamic Server 2000: How do I enable ODBC?
I h开发者_运维百科ave an old server (Solaris 8) running Informix Dynamic Server 2000 Version 9.21.UC4, and I want to get ODBC enabled so that I can get to the data from elsewhere, but I haven't been able to find documentation online about how to do this on the server. I am able to use dbaccess on the server to get to the data just fine, but when I look through the service listing I don't see anything enabled for IDS...
Thoughts? Direction?
Thank you!
Additional thoughts:
- My server's host name is "r3tmmtx"
- The informix internal server name seems to be "cms_ol"
My sqlhosts file:
demo_on onipcshm on_hostname on_servername
demo_se seipcpip se_hostname sqlexec
cms_ol onipcshm r3tmmtx cms_ol
oacms_ol onipcstr r3tmmtx oacms_ol
My environment variables with "INFORMIX" in them:
INFORMIXTERM=terminfo
INFORMIXDIR=/opt/informix
INFORMIXSERVER=cms_ol
IDS is automatically configured to accept ODBC connections when it accepts DB-Access ones too. What is trickier, perhaps, is telling ODBC how to connect to IDS. Here is a .odbc.ini file I used on Solaris - I believe that suitably adapted, it should work for you.
;
; odbc.ini
;
[ODBC Data Sources]
odbc_demo = IDS 11.50.FC3 stores on black
[odbc_demo]
Driver = /usr/informix/11.50.FC1/lib/cli/libifcli.so
Description = IBM Informix CLI 3.50
Server = black_19
FetchBufferSize = 99
UserName = jleffler
Password = PassWord
Database = stores
ServerOptions =
ConnectOptions =
Options =
ReadOnly = no
Trace = yes
TraceFile = /tmp/odbc.trace
No - that isn't my actual password. I also have a suitably configured sqlhosts file:
black_19 ontlitcp black 18190
black_19_tcp ontlitcp black 18191 s=4,pam_serv=login,pamauth=password
black_19_enc ontlitcp black 18192 csm=(black_19_enc)
black_19_shm onipcshm black black_19
black_19_str onipcstr black black_19
black_19_pwd ontlitcp black 18193 csm=(black_19_pwd)
The OBDC file uses the first of these entries.
If you are aiming to connect to IDS from a PC, then you need to configure the ODBC connections on the PC, an area I'm anything but an expert in. One of the tools of relevance is SETNET32 (distributed with CSDK on Windows only). You may also need (or want) to configure DSN-less connections - I've not bothered to do so because I usually use ESQL/C rather than ODBC to connect to IDS.
Also, be aware that both IDS 9.30 and 9.40 are out of service now - IDS 9.21 has been out of service for a long time.
Look at your /etc/services
. There should be something like:
turbo 1526/tcp #Informix server
This means that Informix listens on port 1526. Then use netstat -anp | grep [port]
to see if it is listening and visible to others. If it is visible, then install CSDK on other machine and configure ODBC to access your server.
I don't use Solaris so I don't know if netstat has -p flag to show what application is using connection.
精彩评论