今天执行mysql -uroot -proot时候报错:
xxx@xxxx:/etc/mysql/mariadb.conf.d$ mysql -uroot -proot
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
1:首先检查是否安装了mysql-server了
sudo apt-get install mysql-server to install mysql on ubuntu, 如果mysql-server已经存在了,那么在去尝试一下是否成功,如果还是这个错误的话那么就是文件/var/run/mysqld/mysqld.sock 不存在。
xxxx@xxxx:/etc/mysql/mariadb.conf.d$ sudo apt-get install mysql-server
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
mysql-server 已经是最新版 (8.0.19-1debian10)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 170 个软件包未被升级。
2:如果/var/run/mysqld/mysqld.sock文件不存在应该怎么办?
执行 vim /etc/mysql/my.cnf
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mariadb.conf.d/
我的/etc/mysql/mariadb.conf.d目录下面其实是没有mysqld.cnf文件的
但是/etc/mysql/mysql.conf.d下面是有这个文件的,所以我拷贝一份进去了.
sudo cp mysqld.cnf ../mariadb.conf.d/
vi mysqld.cnf 查看文件
sudo mkdir -p /var/run/mysqld
sudo chown mysql /var/run/mysqld/
sudo service mysql restart
mysql -u root -p
一套操作搞定了
mysql -u root -p
如有问题,欢迎交流,谢谢观看!