输入mysql 直接登录,输入 mysql -uroot -p密码 登录不了

java面试题网站:www.javaoffers.com

服务器经过一次宕机,重启后  输入 mysql -uroot -p密码 登录不进去(Access denied for user 'root'@'localhost' (using password: YES)),反而输入mysql 命令直接登录进去。

直接用mysql命令登录进去后,show databases; 查看一下数据库发现:只有  information_schema 和 test  这两个数据库
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| test               |
+--------------------+

脑袋感觉有点方,我其他的库呢,

解决方案:

#首先停止 mysql: service mysql stop(报错的话输入: service mysqld stop)

#然后输入 mysqld_safe --skip-grant-table 会显如下信息:

       191215 02:17:35 mysqld_safe Logging to '/var/lib/mysql/node1.err'.
        191215 02:17:35 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql

另起一终端 然后你就可以用 mysql -uroot -p密码 进入mysql,输入 show databases; 发现你所有的库都回来了,但是如果你reboot重启后,任然会出现之前的问题。
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| hivedb             |
| mh615              |
| mysql              |
| performance_schema |
| test               |
+--------------------+

#选择 mysq库 :use mysql , 然后查看一下 user 表:select  user from user; (注意user 表中存在一user字段),发现有两条( '' ) 空  user数据,然后你只需要删除所有 user =  ‘’ 的数据  即可,delete from user where user = '';然后reboot 重启。
mysql> select user from user;
+------+
| user |
+------+
| root |
| root |
| root |
|      |
|      |
| root |
+------+

delete from user where user = '';删除所有 user='' 的数据。exit ;退出mysql ,然后输入reboot重启服务器,

reboot 重启后,输入mysql 命令后 不能直接进msyql,这时你输入 mysql -uroot -p密码 就可以成功进入mysql,并且show databases;


mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| hivedb             |
| mh615              |
| mysql              |
| performance_schema |
| test               |
+--------------------+
6 rows in set (0.01 sec)

一切都变得正常了,你之前的库也都在了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值