admin管理员组

文章数量:1564167

1.为什么要重装?之前不打算重装的,但是遇到了如下问题

今天在ubuntu16.04下,输入mysql -u root -p运行mysql时候,提示如下错误:
ERROR 2002(HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
注意,上面报的错误内容是mysqld.sock,不是mysql.sock

网上搜了下,导致报错的原因很多,解决方法也各不一样.。在解决的过程中,输入了systemctl start mysqld.service,又报了如下的错误:
Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe"for details.
查看mysql的状态systemctl status mysqld.service,有下面输入信息
Active: inactive (dead) (Result: exit-code) since .........
注意上面的两个命令使用的是mysqld.service,不是mysql.service

2.开始重装

坑太多了,因此就准备先数据库先做备份,然后准备彻底卸载重装mysql,下面介绍卸载重装mysql的具体步骤
步骤一:删除系统中所有带有mysql-的包
sudo apt-get remove mysql-*

步骤二:自动清除mysql*
sudo apt-get autoremove mysql* --purge
步骤三:自动移除apparmor
sudo apt-get remove apparmor
步骤四:清理残留的数据
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P

步骤五:重新安装mysql-client和mysql-server这两个包,安装过程中,会提示你设置mysql的密码,我这里设置密码为123456。 ubuntu16.04卸载重装mysql时报错的解决办法
sudo apt-get install mysql-client mysql-server

步骤六:开启mysql服务。 ubuntu16.04下,mysql服务相关的命令各种写法
sudo
步骤七:查看mysql状态。 ubuntu16.04下,mysql服务相关的命令各种写法
sudo service mysql status或者/etc/init.d/mysql status或者sudo systemctl status mysql.service
切记(大坑),不是sudo service mysqld statu或者sudo systemctl status mysqld.service

看见某个博主的一篇文章说遇见了如下问题,他也提供了解决方法,我没试过,大家可以试一试。至少我没遇到过

步骤八:输入用户名root,密码为123456,进入mysql的Shell。(进不去的话,重启下服务器)
mysql -u root -p123456

写在最后(问大家的)
有一点我不明白,sudo systemctl status mysql.service和sudo systemctl status mysqld.service有啥区别呢。
我这边运行sudo systemctl status mysql.service时,提示mysql.service是开启状态,

而运行sudo systemctl status mysqld.service时,提示mysql.service是未开启状态,

https://www.jianshu/p/2a752dd01899

本文标签: 重装系统mysql