Informix Dynamic Server 2000:如何启用 ODBC?

发布于 2024-08-11 01:14:09 字数 684 浏览 2 评论 0原文

我有一台运行 Informix Dynamic Server 2000 版本 9.21.UC4 的旧服务器 (Solaris 8),我想启用 ODBC,以便我可以从其他地方获取数据,但我无法在网上找到有关如何操作的文档在服务器上执行此操作。我可以在服务器上使用 dbaccess 来获取数据,但是当我查看服务列表时,我没有看到任何为 IDS 启用的内容...

有什么想法吗?方向?

谢谢你!

其他想法:

  • 我的服务器的主机名是“r3tmmtx”
  • informix 内部服务器名称似乎是“cms_ol”

我的 sqlhosts 文件:

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

我的环境变量中包含“INFORMIX”:

INFORMIXTERM=terminfo
INFORMIXDIR=/opt/informix
INFORMIXSERVER=cms_ol

I have 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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

冷夜 2024-08-18 01:14:09

当 IDS 也接受 DB-Access 连接时,它会自动配置为接受 ODBC 连接。也许更棘手的是告诉 ODBC 如何连接到 IDS。这是我在 Solaris 上使用的 .odbc.ini 文件 - 我相信经过适当修改,它应该适合您。

;
;  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

不 - 这不是我的实际密码。我还有一个经过适当配置的 sqlhosts 文件:

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)

OBDC 文件使用这些条目中的第一个。

如果您的目标是从 PC 连接到 IDS,那么您需要在 PC 上配置 ODBC 连接,我在这方面绝非专家。相关工具之一是 SETNET32(仅在 Windows 上与 CSDK 一起分发) )。您可能还需要(或想要)配置无 DSN 连接 - 我懒得这样做,因为我通常使用 ESQL/C 而不是 ODBC 来连接到 IDS。

另外,请注意,IDS 9.30 和 9.40 现在均已停止服务 - IDS 9.21 已停止服务很长时间了。

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.

潦草背影 2024-08-18 01:14:09

查看您的 /etc/services。应该有类似这样的内容:

   turbo  1526/tcp                      #Informix server

这意味着 Informix 侦听端口 1526。然后使用 netstat -anp | grep [port] 查看它是否正在监听并且对其他人可见。如果可见,则在其他计算机上安装 CSDK 并配置 ODBC 来访问您的服务器。

我不使用 Solaris,所以我不知道 netstat 是否有 -p 标志来显示哪个应用程序正在使用连接。

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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文