好的,我环顾四周,但我对这个问题非常困惑.如果这是愚蠢的话,请原谅我. :*我正在运行32位Debian 6.0.6.
root@debian:~# service mysql start
Starting MySQL database server: mysqld . . . . . . . . . . . . . . failed!
因此,该服务无法启动.
root@debian:~# mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
这是运行命令mysql时给出的错误.这个错误是因为mysqld无法启动吗?还是有其他原因吗?
我去了目录/ var / mysqld /,并没有一个名为mysqld.sock的文件.这是问题,还是我是白痴? HAHAH.任何帮助将不胜感激.感谢您的时间.
编辑:此外,似乎与mysql相关的日志,如mysql.log和mysql.err对它们没有任何价值,它们是空白的.此外,我已经chmod 777所有mysql所在的目录.该服务仍然继续拒绝运行.
最佳答案
尝试以不同的方式追踪错误.在前台运行MySQL.
mysqld_safe --log-error=/var/log/mysql.err
这应该在/var/log/mysql.err上产生一些带有一些细节的日志,并在你的问题中添加详细信息,如果我的解决方案不起作用,而其他人可以提供帮助.
您最终可能会收到错误mysqld_safe:command not found,如果这样做,请使用locate命令查找它.
locate mysqld_safe
这会告诉你它在哪里.例如,如果它返回/usr/bin/mysqld_safe,请运行该命令
/usr/bin/mysqld_safe --log-error=/var/log/mysql.err
如果我不得不冒险猜测,你会发现有关pthreads的错误.
InnoDB: Error: pthread_create returned 12
如果是这种情况,简单的解决方案是禁用InnoDB for MySQL.有可能你不需要这个,所以在配置中禁用它.
要关闭InnoDB,请在/etc/mysql/my.cnf中编辑MySQL配置文件并将其添加到其中
skip-innodb
现在启动MySQL
/etc/init.d/mysql start