萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> “Can't connect to local MySQL”提示

“Can't connect to local MySQL”提示

  今天連接mysql數據庫的時候遇到一個問題:Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

  方案1.

  1.#ps -A|grep mysql

  顯示類似:

  1829 ? 00:00:00 mysqld_safe

  1876 ? 00:00:31 mysqld

  2.#kill -9 1829

  3.#kill -9 1876

  4.#/etc/init.d/mysql restart

  5.#mysql -u root -p

  他的麻煩解決了,我的還沒解決!

  繼續找

  方案2

  先查看 /etc/rc.d/init.d/mysqld status 看看m y s q l 是否已經啟動.

  另外看看是不是權限問題.

  ------------------------------------------------------------------------------------

  [root@localhost beinan]#chown -R mysql:mysql /var/lib/mysql

  [root@localhost beinan]# /etc/init.d/mysqld start

  啟動 MySQL: [ 確定 ]

  [root@localhost lib]# mysqladmin -uroot password '123456'

  [root@localhost lib]# mysql -uroot -p

  Enter password:

  Welcome to the MySQL monitor. Commands end with ; or /g.

  Your MySQL connection id is 3 to server version: 4.1.11

  Type 'help;' or '/h' for help. Type '/c' to clear the buffe

  他的也解決了,我的麻煩還在繼續,依然繼續尋找

  方案3

  問題解決了,竟然是max_connections=1000 他說太多了,然後改成500也說多,無奈刪之問題解決了。

  還是不行

  方案4

  /var/lib/mysql 所有文件權限 改成mysql.mysql

  不行不行

  方案5

  摘要:解決不能通過mysql .sock連接MySQL問題 這個問題主要提示是,不能通過 '/tmp/mysql .sock'連到服務器,而php標准配置正是用過'/tmp/mysql .sock',但是一些mysql 安裝方法 將 mysql .sock放在/var/lib /mysql .sock或者其他的什麼地方,你可以通過修改/etc/my.cnf文件來修正它,打開文件,可以看到如下的東東:

  [mysql d]

  socket=/var/lib/mysql .sock

  改一下就好了,但也會引起其他的問題,如mysql 程序連不上了,再加一點:

  [mysql ]

  socket=/tmp/mysql .sock

  或者還可以通過修改php.ini中的配置來使php用其他的mysql .sock來連,這個大家自己去找找

  或者用這樣的方法:

  ln -s /var/lib/mysql /mysql .sock /tmp/mysql .sock

  成功了,就是這樣ln -s /var/lib/mysql /mysql .sock /tmp/mysql .sock

  OK!

  但我的系統中沒有找到mysql.sock文件,只有mysqld.sock文件,/var/run/mysqld/mysqld.sock

  於是仿照上面的做法: ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock

  這樣,可以正常連接數據庫了.。

copyright © 萬盛學電腦網 all rights reserved