无法通过套接字'/var/run/mysqld/mysqld.sock'连接到本地MySQL服务器

pam*_*lus 8 mysql php apache2

我刚刚安装了 appache、MySQL 和 PHP,在安装过程中,系统提示我输入 MySQL root 用户密码,但是当我启动 MySQL 时,它弹出错误,我似乎无法找到解决方法,大多数我读过的解决方案并没有解决它,而且,我发现 /var/run/mysqld 路径甚至不存在,我的 php 还需要套接字连接到我的数据库。

小智 7

在检查 /etc/mysql/my.cnf 是否正确(port=3306, bind-address=127.0.0.1)后,我仍然遇到问题。然后我/var/run/mysqld/mysqld.sock通过安装mysql-server自动获得:

$ sudo apt-get install mysql-server-5.5
Run Code Online (Sandbox Code Playgroud)

然后我尝试像 thefourtheye 所说的那样启动 mysql 服务器,但仍然遇到与尝试通过$ mysql -u root.

最后,我在 ubuntu 论坛上找到了类似的讨论,最终为我修复了它。

这是我发现我需要做的链接的唯一部分:

$ sudo service mysql stop
$ sudo /etc/init.d/apparmor reload
$ sudo service mysql start
Run Code Online (Sandbox Code Playgroud)

然后我可以$ mysql -u root -p使用我在安装时设置的密码启动 mysqlmysql-server-5.5


the*_*eye 2

sudo service mysql start

执行该命令启动MySQL服务器。


小智 0

我曾经在 MySQL 更新后遇到过同样的错误消息。就我而言,这是由无效的配置选项引起的。

\n\n

该选项\xe2\x80\x93skip-locking在 MySQL 5.1 中已弃用,并在 MySQL 5.5 中删除。你必须使用\xe2\x80\x93skip-external-locking它来代替。

\n\n

所以检查一下你的配置是否有一行

\n\n
skip-locking\n
Run Code Online (Sandbox Code Playgroud)\n\n

在该[mysqld]部分中。如果是这样,请将其更改为

\n\n
skip-external-locking\n
Run Code Online (Sandbox Code Playgroud)\n\n

不要忘记重新启动服务器。

\n