错误 2002:无法通过套接字“/tmp/mysql.sock”连接到本地 MySQL 服务器(2)
我使用的是 Ubuntu 11.04。一切正常 PHP、PHPMYADMIN、手动登录 MySQL 等。
我编写了一个使用 MySQL 的 C 应用程序。现在,当我启动此应用程序时,我收到上述错误。我试图通过将原始文件链接到 /tmp/ 文件夹(ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock)来防止这种情况发生,但是,过了一会儿我开始收到此错误再次 - 因为我的链接已被删除,这令人沮丧。
我需要做什么才能使这项工作成功?
I'm on Ubuntu 11.04. Everything works PHP, PHPMYADMIN, manual login to MySQL etc.
I have written a C application that uses MySQL. Now, when I start this application I receive the above error. I tried to prevent that from happening by linking the original file into the /tmp/ folder (ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock), however, after a while I start getting this error again - because my link has been removed, which is frustating.
What do I need to do to make this work?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
MySQL 库默认使用
/tmp/mysql.sock
进行编译。服务器使用/var/run/mysqld/mysql.sock
启动,并且您的$HOME/.my.cnf
未在[ 中反映此值client]
部分。如果在没有有效 $HOME 的情况下运行,您可能需要使用 mysql_options 与 MYSQL_READ_DEFAULT_FILE。
The MySQL libraries are compiled with a default of
/tmp/mysql.sock
. The server is started up with/var/run/mysqld/mysql.sock
and your$HOME/.my.cnf
does not reflect this value in the[client]
section.If this is run without a valid $HOME you may need to use mysql_options with MYSQL_READ_DEFAULT_FILE.
尝试将文件链接到 /tmp/ 之外的其他位置并从那里使用它
Try linking the file in other location than /tmp/ and use it from there