客户端(HP A )通过esqlc 访问网络数据库(HP B +informix7),客户端没有安装数据库客户端,仅安装了esql包

eng 2004-08-31 12:31:39
客户端(HP A )通过esqlc 访问网络数据库(HP B +informix7),客户端没有安装数据库客户端,仅安装了esql包,通过配置/etc/hosts、/etc/services 以及$INFORMIXDIR/etc/sqlhosts,与数据库服务器(配置etc/hosts、etc/hosts.equiv文件)建立信任关系,同时在数据库服务器建立客户端相同的用户,并赋数据库访问权限。通过esqlc实现函数ConnectDB()、DisconnectDB(),里边就是EXEC SQL CONNECT TO :dbname,EXEC SQL

DISCONNECT current。

客户端 程序 在 A 上执行:

方法一:
void main()
{
ConnectDB();
DisconnectDB();
}

ok,没有问题。

方法二:

void * thread_fun()
{
ConnectDB();
}
void main()
{
pthread_create(...thread_fun,...); //启动线程来调用数据库连接函数

DisconnectDB();
}

失败 客户端sqlca.sqlcode = -908

数据库服务器日志 : online.log : listener thread err=-25573,oserr=233 Network driver cannot accept a connection on the port.


若把客户端程序放在数据库服务器B上,上面两种方式都没有问题,那位大虾帮帮忙,搞死我了!
...全文
116 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
wenlq 2004-09-03
  • 打赏
  • 举报
回复
在你的A机器上 也要装 数据库服务器 ,然后再配通 B机 的数据库。
再用dbaccess 测试 可以连B机器的数据库。
eng 2004-08-31
  • 打赏
  • 举报
回复
高手快来呀!

1,195

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 Informix
社区管理员
  • Informix社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧