Heim > Backend-Entwicklung > PHP-Tutorial > mac os 启动mysql失败 ERROR 2002 HY000

mac os 启动mysql失败 ERROR 2002 HY000

WBOY
Freigeben: 2016-06-06 20:33:10
Original
1099 Leute haben es durchsucht

<code>bogon:~ ksoul$ /Library/StartupItems/MySQLCOM/MySQLCOM restart
Restarting MySQL database server
bogon:~ ksoul$ 
</code>
Nach dem Login kopieren
Nach dem Login kopieren
<code>bogon:~ ksoul$ mysql -uroot -p
Enter password: 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
</code>
Nach dem Login kopieren
Nach dem Login kopieren

通过mysql官网下载的 mysql-5.6.24-osx10.9-x86_64.dmg 双击下一步安装,但启动成功,但一运行就报错。系统是MacBook Air os 10.10.2


补充:
在sg抄了一个配置复制到 /usr/local/mysql/my.cnf中可以了,不过奇怪的事。phpmyadmin中链接地址必须用 127.0.0.1

<code>[client]
port = 3306
socket = /tmp/mysql.socket
default-character-set = utf8

[mysqld]
collation-server = utf8_unicode_ci
character-set-server = utf8
init-connect = 'SET NAMES utf8'
max_allowed_packet = 64M
bind-address = 127.0.0.1
port = 3306
socket = /tmp/mysql.sock
innodb_file_per_table = 1

[mysqld_safe]
timezone = '+0:00'



</code>
Nach dem Login kopieren
Nach dem Login kopieren

回复内容:

<code>bogon:~ ksoul$ /Library/StartupItems/MySQLCOM/MySQLCOM restart
Restarting MySQL database server
bogon:~ ksoul$ 
</code>
Nach dem Login kopieren
Nach dem Login kopieren
<code>bogon:~ ksoul$ mysql -uroot -p
Enter password: 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
</code>
Nach dem Login kopieren
Nach dem Login kopieren

通过mysql官网下载的 mysql-5.6.24-osx10.9-x86_64.dmg 双击下一步安装,但启动成功,但一运行就报错。系统是MacBook Air os 10.10.2


补充:
在sg抄了一个配置复制到 /usr/local/mysql/my.cnf中可以了,不过奇怪的事。phpmyadmin中链接地址必须用 127.0.0.1

<code>[client]
port = 3306
socket = /tmp/mysql.socket
default-character-set = utf8

[mysqld]
collation-server = utf8_unicode_ci
character-set-server = utf8
init-connect = 'SET NAMES utf8'
max_allowed_packet = 64M
bind-address = 127.0.0.1
port = 3306
socket = /tmp/mysql.sock
innodb_file_per_table = 1

[mysqld_safe]
timezone = '+0:00'



</code>
Nach dem Login kopieren
Nach dem Login kopieren

提示的信息很清楚,找不到mysql.sock文件。php.ini里面默认配置路径是/tmp/mysql.sock,但是mac os 下面mysql默认安装时mysql.sock文件不一定是这个位置(具体我没验证过)。你从sg拷贝的配置里面指定了这个文件的生成位置

socket = /tmp/mysql.socket

mysql重新启动的时候就会把这个sock文件放在这里。

tips:通过localhost方式(即unix socket)访问mysql server的时候才会用到这个文件,通过IP访问不会。这可能是你phpmyadmin能够通过IP访问数据库的原因。

不是很懂。结合上一个问题,我觉得你可能是第一次使用Mac OS X:

建议使用Homebrew来安装MySQL等等软件,brew相当于CentOS上的yum。

重新启动mysql
重新登录
确定你的密码没有错误.

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
确定文件是否存在或者权限问题

我之前也遇到过这个问题,这个好像是最新版本的mysql的bug,我时降级到5.1.73后才可以使用的,不知道现在解决了没有。。。。。。

检查一下你的php.ini配置。我以前的一篇笔记,你可以参考一下,希望对你有帮助。

http://www.netingcn.com/mac-os-lion-php-mysql-localhost.html

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage