免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3413 | 回复: 5
打印 上一主题 下一主题

[C] 求助!一个由c语言编写的cgi程序连接mysql数据库的问题。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-03-26 10:10 |只看该作者 |倒序浏览
我需要用c写一个连接mysql的cgi程序,cgi程序放在“/var/www/cgi/”目录,mysql客户机库放在“/usr/local/lib/mysql”下,如果我的cgi程序编译的时候不连接客户机库,就可以正常执行,当编译的时候加
“-L/usr/local/lib/mysql/ -lmysqlclient -lz -lm”的时候就出错,错误如下:

  1. Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request.

  2. Please contact the server administrator,root@localhost.localdomain and inform them of the time the error occurred, and anything you might have done that may have caused the error.

  3. More information about this error may be available in the server error log.

复制代码


请大家帮忙看看是什么原因?

论坛徽章:
0
2 [报告]
发表于 2004-03-26 11:08 |只看该作者

求助!一个由c语言编写的cgi程序连接mysql数据库的问题。

把你的mysql客户机库copy到/usr/lib下在运行试一下。

论坛徽章:
0
3 [报告]
发表于 2004-03-26 12:01 |只看该作者

求助!一个由c语言编写的cgi程序连接mysql数据库的问题。

万分感谢liupch朋友,照你说的那样做就可以了,请问这是什么原因呢?是由于权限吗?
    我试过把‘/usr/local/lib/mysql’逐层的目录权限和mysql目录下的所有文件的权限设置为777,用户组id所有者id都设置为apache时不可执行。为什么把库拷贝过来就可以了呢?

论坛徽章:
0
4 [报告]
发表于 2004-03-26 12:11 |只看该作者

求助!一个由c语言编写的cgi程序连接mysql数据库的问题。

呵呵,因为一般来说软件运行的时候他却省的连接库的路径是在/usr/lib下。你的mysql库是安装在自己的路径下,所以程序运行时就找不到这个库。所以就出错了。

或者你在环境变量里面指定一下连接库的路径
LD_LIBARAY_PATH=/usr/lib:/usr/local/lib/mysql
export LD_LIBARAY_PATH
然后restart apache,估计也是可以的,不过我没测试过,最简单的方法就是把所有的库都copy或者link到/usr/lib下

论坛徽章:
0
5 [报告]
发表于 2004-03-26 12:39 |只看该作者

求助!一个由c语言编写的cgi程序连接mysql数据库的问题。

[quote]原帖由 "liupch"]把你的mysql客户机库copy到/usr/lib下在运行试一下。[/quote 发表:


这么解决问题倒是可以.不过我觉得还是应该使用符号连接而不是直接复制.

论坛徽章:
0
6 [报告]
发表于 2004-03-26 14:52 |只看该作者

求助!一个由c语言编写的cgi程序连接mysql数据库的问题。

原帖由 "liupch" 发表:

或者你在环境变量里面指定一下连接库的路径
LD_LIBARAY_PATH=/usr/lib:/usr/local/lib/mysql
export LD_LIBARAY_PATH
然后restart apache,估计也是可以的,不过我没测试过,最简单的方法就是把所有的库都copy或者link到/usr/lib下


我开始就是用你所说的这种方式来做的,如果写的是系统的守护进程没有问题,可以连接上,但是cgi就不可以.
很奇怪,我编译的时候已经用“-L/usr/local/lib/mysql -lmysqlclient” 指明客户机库的路径了,守护进程都可以找到为什么cgi就找不到呢?

另外楼上朋友说的用符号连接也是一个不错的办法,我尝试一下。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP