系统 :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 这里可以看到。