最近在linux上裝Aphace,mysql,php時,遇到很多問題,在裝apache和php遇到的問題要簡單點,在百度,google上一搜就解決了,唯獨在裝mysql的時候遇到了一個問題困擾了我很久。
我用的是ubuntu7.0.我裝mysql時,運行mysqladmin version時,始終出錯:
can't connect to local MySQL server through socket 'var/run/mysqld/mysqld.sock'
這個把我弄得幾近崩潰,我在網上查找了很多的解決辦法,大概有幾種解決方案:
1.權限問題
2.修改/etc/my.cnf文件
3.操作系統或mysql升級
4.創(chuàng)建/var/run/mysqld/mysqld.sock
以上的方法我都試過了,結果都沒有解決問題。我差不多要放棄了,不過我想再堅持一下,一定能夠解決掉的。我準備發(fā)郵件想easychen,zoltan請 教,正當我要發(fā)郵件的時候,我想能不能換個思維,我的想法是:既然can't connect to socket '/var/run/mysqld/mysqld.sock'
,那么我在鏈接socket時,在后面加上socket參數不就得了么,
即:mysqladmin version --socket == /tmp/mysql.sock
沒有想到的事情發(fā)生了,問題居然解決了,太高興了。問題雖然解決了,但是卻不知道為什么這樣,為什么默認是/var/run/mysqld /mysqld.sock?我在my.cnf文件里查了一下,client和mysqld中的socket路徑都是/tmp/mysql.sock,而且 在編譯時指定的socket也是/tmp/mysql.sock!這點確實有點不懂,看來我得需要在網上在找找答案了!望知情人士多多指教。
下面在單獨給大家介紹下liunx mysql.sock問題
錯誤代碼:Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock '
mysql.sock根本就不在 /var/lib/mysql 目錄下。自己的目錄在 /tmp/mysql.sock
于是做了一個連接。
ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
重新啟動就好了
注:ln用法:ln -s 源文件 目標文件 ln命令詳情:
總結
以上所述是小編給大家介紹的linux下安裝mysql及mysql.sock問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
您可能感興趣的文章:- Linux下將源文件編譯成目標文件的過程解析
- Linux下查看.so和可執(zhí)行文件是否debug編譯的方法(必看)
- linux如何編譯安裝新內核支持NTFS文件系統(以redhat7.2x64為例)
- CentOS 安裝軟件出現錯誤:/lib/ld-linux.so.2: bad ELF interpreter 解決
- Linux下MySQL5.7.18二進制包安裝教程(無默認配置文件my_default.cnf)
- Linux系統中xorg.conf文件詳細介紹
- linux中把.c的文件編譯成.so文件