我在嘗試鏈接mysql時遇到大問題。 當我跑步時: php
/usr/local/mysql/bin/mysql start
我有如下錯誤: mysql
Can't connect to local MySQL server through socket '/var/mysql/mysql.sock' (38)
我在/var/mysql
目錄下確實有mysql.sock
。 sql
在/etc/my.cnf
我有: apache
[client] port=3306 socket=/var/mysql/mysql.sock [mysqld] port=3306 socket=/var/mysql/mysql.sock key_buffer_size=16M max_allowed_packet=8M
在/etc/php.ini
我有: 服務器
; Default socket name for local MySQL connects. If empty, uses the built-in ; MySQL defaults. mysql.default_socket = /var/mysql/mysql.sock
我已經使用sudo /opt/local/apache2/bin/apachectl restart
啓動了Apache socket
可是我仍然有錯誤。 工具
不然,我不知道這是否相關,可是當我執行mysql_config --sockets
我獲得了 ui
--socket [/tmp/mysql.sock]
確保您正在運行mysqld: /etc/init.d/mysql start
spa
肯定要安裝mysql和mysql服務器嗎? 命令行
例如,要安裝mySql服務器,我將使用yum或apt來安裝mysql命令行工具和服務器:
yum -y install mysql mysql-server (or apt-get install mysql mysql-server)
啓用MySQL服務:
/sbin/chkconfig mysqld on
啓動MySQL服務器:
/sbin/service mysqld start
而後設置MySQL root密碼:
mysqladmin -u root password 'new-password' (with the quotes)
但願對您有所幫助。
您老是能夠經過使用--socket
選項指定mysql.sock文件的位置來啓動mysql服務器
mysql --socket=/var/mysql/mysql.sock
即便套接字文件的位置在my.cnf文件中的其餘位置中指定,此方法也將起做用。
我收到錯誤消息是由於我正在運行MAMP,而個人.sock文件位於其餘位置。 我只是在應用程序認爲應該指向它實際位置的地方添加了一個符號連接,它的工做方式就像是一種魅力。
我收到如下錯誤
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111)
嘗試了幾種方法,最後經過如下方法解決了
sudo gksu gedit /etc/mysql/my.cnf
改性
#bind-address = 127.0.0.1
至
bind-address = localhost
而後重啓
sudo /etc/init.d/mysql restart
有效