我想测试一下能否链接上mysql,编写了如下简单的测试程序。文件名 " conn_mysql.c "
#include<stdio.h>
#include<stdlib.h>
#include<mysql.h>
int main( int argc, char *argv[] )
{
MYSQL *ConnMysql_ptr;
ConnMysql_ptr = mysql_init( NULL );
if( !mysql_real_connect(ConnMysql_ptr,
"localhost","root","yhy1983zj","eathonyang0",
0,NULL,0) )
printf("connect failed\n");
else
printf("connect success\n");
mysql_close(ConnMysql_ptr);
}我的mysql安装在 /usr/local/mysql
以下是我操作的命令
[root@localhost root]# gcc -I/usr/local/mysql/include/mysql conn_mysql.c -L/usr/local/mysql/lib/mysql -lmysqlclient -o conn_mysql
[root@localhost root]# ./conn_mysql
./conn_mysql: error while loading shared libraries: libmysqlclient.so.15: cannot open shared object file: No such file or directory请各位指点一二,谢谢。
#include<stdio.h>
#include<stdlib.h>
#include<mysql.h>
int main( int argc, char *argv[] )
{
MYSQL *ConnMysql_ptr;
ConnMysql_ptr = mysql_init( NULL );
if( !mysql_real_connect(ConnMysql_ptr,
"localhost","root","yhy1983zj","eathonyang0",
0,NULL,0) )
printf("connect failed\n");
else
printf("connect success\n");
mysql_close(ConnMysql_ptr);
}我的mysql安装在 /usr/local/mysql
以下是我操作的命令
[root@localhost root]# gcc -I/usr/local/mysql/include/mysql conn_mysql.c -L/usr/local/mysql/lib/mysql -lmysqlclient -o conn_mysql
[root@localhost root]# ./conn_mysql
./conn_mysql: error while loading shared libraries: libmysqlclient.so.15: cannot open shared object file: No such file or directory请各位指点一二,谢谢。
你先在一个客户端链接服务器的mysql试试 看看能不能连接上,就是确认你的mysql链接是否接通。
如果能接通,查看你的丢失文件位置,确认存在。
[root@localhost mysql]# ls
a.out libmyisam.a libmysqlclient.so libmysys.a
conn_mysql libmyisammrg.a libmysqlclient.so.15 libvio.a
libdbug.a libmysqlclient.a libmysqlclient.so.15.0.0 libz.a
libheap.a libmysqlclient.la libmystrings.a libz.la
[root@localhost mysql]#
第三种方法上午试了,不行,可能是我没有正确运行ldconfig确认刷新。 方法二我就不尝试了。能测试连上就好,我就可以使用c编写mysql程序做练习学习了,这个才是我最终要的结果。呵呵。别的细节的东西以后再慢慢接触。给你50分:)在Linux下C连接MySQL出现问题如下:
编译成功后,运行程序,出现./connect: error while loading shared libraries: libmysqlclient.so.15: cannot open shared object file: No such file or directory.
出现上面的错误是因为系统运行的时候没有找到程序运行所需要的libmysqlclient.so.15运行库文件,解决方法有两个:
方法一:直接把libmysqlclient.so.15这个文件拷贝到系统指定的/usr/lib库文件目录中。
方法二:设置/etc/ld.so.conf文件,编辑该文件,在文件中加入libmysqlclient.so.15所在目录,保存退出。需要注意的是,每次改动ld.so.conf之后需要运行ldconfig来确认刷新。
方法三:Add /usr/local/mysql/lib/mysql to you LD_LIBRARY_PATH environment variable