我有一个运行良好的Web服务器,直到今天停电为止。使服务器重新联机后,托管在其上的网站出现故障,因为它无法连接到MySQL。
当我尝试通过mysql -u root -p登录到mysql时,得到以下信息:
错误2002(HY000):无法通过套接字'/var/run/mysqld/mysql.sock'(2)连接到本地MySQL服务器
因此,我在服务器上搜索了mysql.sock,根本找不到它。就像在电源故障期间被删除一样。
我如何才能恢复并运行mysql,并且由于找不到袜子文件,应该将my.cnf指向哪里?
mysql.sock文件在mysql启动时创建,并在mysql关闭时删除。建议不要自己创建一个mysql.sock文件。实际上,在数据目录中自己创建一个会干扰启动mysql时创建一个。
mysql.sock文件是一个unix套接字,用于促进从客户端到服务器的数据传输。在原始mysql安装中,服务器用于与本地客户端进行通信的Unix套接字文件的默认位置是/tmp/mysql.sock
。该位置也可以在您的位置进行设置my.cnf
,可能类似于:
[mysqld]
socket=/var/run/mysql/mysql.sock
如果在尝试登录时收到诸如ERROR 2002(HY000)之类的错误消息:无法通过套接字'/tmp/mysql.sock'(2)连接到本地MySQL服务器,则表示MySQL服务器守护程序(Unix)或服务(Windows)未运行。
您可以在以下链接中了解更多信息:dev.mysql或dev.mysql
这篇文章也可以帮助您解决服务器故障
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句