mysql Access denied for user 'root'@'localhost'问题解决

问题描述:

系统安装mysql的过程中,没有提示配置用户名和密码相关的信息,安装完毕后,登录报错。

表现现象为:

mysql -u root -p

[输入root密码]

界面提示:

ERROR 1698 (28000): Access denied for user 'root'@'localhost'

问题解决过程:

1. 首先尝试了通过绕开数据库权限校验的流程,直接进入数据库后再重新配置用户名和密码

sudo /etc/init.d/mysql stop

sudo mysqld_safe --skip-grant-tables

mysql -u root 尝试登录,

没有作用,还是会提示无权限访问数据库

2. 绕开权限校验行不通,原因无法定位,进一步想通过重新安装数据库的方法解决,

主要是怀疑上次安装中有部分系统原来自带的用户残留信息或配置导致目前的问题,所以重装前,先卸载和清除原有安装。

sudo apt-get remove mysql-*

dpkg –l | grep ^rc | awk ‘{print $2}’ | xargs dpkg –P

sudo apt-get install mysql-client mysql-server

安装过程中发现,还是没有提示配置用户或者登录密码信息,“不详的预感”……

果然,登录发现还是不行,再次提示Access denied 。

3. 用“mysql安装不提示配置密码”去检索类似问题,发现另一个方法,找到了mysql的默认登录信息。

/etc/mysql/debian.cnf中,使用黄色框中的登录信息即可登录。

捕获

4. 登录mysql后,对用户即可进行新增,删除,配置,修改等等一系列操作。

猜你喜欢

转载自www.cnblogs.com/doctors/p/10799301.html
今日推荐