系統 :ubuntu16.04 使用apt-get命令安裝mysql,啟動時出錯:
can't connect to local mysql server through socket '/var/run/mysqld/mysqld.sock'
谷歌了一發,按網上說的,需要修改配置文件,本來路徑應該是/etc/mysql/my.cnf,但是里面只有兩行,以前都不是這樣的啊,改都不知道怎么改了。所以試着重新安裝,卸載mysql:
sudo apt-get remove mysql-server
然后把mysql文件夾全部刪除:
find / -name mysql
把這個搜索出來的mysql文件夾全部刪掉。
然后重新安裝:
sudo apt-get install mysql-server
然后重啟動:
service mysql start
使用mysql -u root登錄,然並卵,依然是can't connect to local mysql server through socket '/var/run/mysqld/mysqld.sock'。
然后又谷歌了一通,期間去mysql官網下載deb包安裝,但是並不成功,發現依賴很多,官網下載的壓縮包里面有common client server的安裝文件,安裝時總是有各種依賴,安裝不成功。最后還是決定使用apt-get安裝方式,使用apt-get install mysql-server時發現好像並沒有真實安裝,網上查了下大致意思是mysql沒有卸載干凈,然后使用命令:
sudo apt-get -f install
看log貌似比較靠譜了,但是報錯:update-alternatives: error: alternative path /etc/mysql/my.cnf.fallback doesn't exist
然后繼續谷歌,終於找到解決辦法:
sudo apt-get remove --purge mysql-\* sudo apt-get install mysql-server mysql-client
清除mysql 然后重裝.
在這個帖子里找到的:
http://askubuntu.com/questions/643251/having-trouble-in-installing-and-removing-mysql-in-ubuntu
最后終於又可以進入mysql了。由於需要遠程連接,需要修改配置文件,前面說到mysql5.7.16的my.cnf里面只有兩行,跟筆者以往遇到的都不同,好像是指向其他文件:
!includedir /etc/mysql/conf.d/ !includedir /etc/mysql/mysql.conf.d/
網上找了下說是在/etc/mysql/mysql.conf.d里面,果然在路徑/etc/mysql/mysql.conf.d/mysqld.cnf是真實的配置文件路徑。然后mysql遠程連接怎么配置在筆者另一篇文章:http://www.cnblogs.com/symen/p/5021857.html 這里可以看到。