还是第一次使用mysql数据库,也是第一次尝试用c语言进行数据库操作。在这个过程中遇到很多问题,在此列出来。
ERROR: ERROR:
Connection error 2002: Can't connect to local MySQLserver through socket '/tmp/mysql.sock' (2)
解决方法:查看tmp目录确实没有mysql.sock文件。查看/etc/mysql/my.conf文件 找到socket=/var/run/mysqld/mysqld.sock
执行命令ln -s /var/run/mysqld/mysqld.sock /temp/mysql.socket这样就把mysqld.sock链接过去并生成了mysql.sock文件.这个相当与创建一个快捷方式。但是这样每次重启mysql的时候都必须手动的去链接一次,很麻烦。因为mysqld.sock只有在mysql启动后才产生。
最后我决定修改my.conf文件,修改的地方也很简单。
把里面socket(一共三处)的值改为/tmp/mysql.sock:
socket = /tmp/mysql.sock
修改后重启mysql,再运行程序就链接成功了。
ERROR:./a.out:error while loading shared libraries: libmysql.so.16: cannot openshared object file: No such file or directory
这个解决方案是网上搜索的挺管用。
1> libmysql.so.16 安装在/usr/local/mysql/lib
2> 编辑 vi/etc/ld.so.conf
include ld.so.conf.d/*.conf
/usr/local/mysql/lib //添加这一行
3> ldconfig
也许你可能不太清楚为什么修改了这个文件程序就能运行成功了。
访问下面网址,你可以找到答案。
http://blog.sina.com.cn/s/blog_4cce4f6a0100ms6f.html