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后,分析存储登录信息的user表,分析下为何root之前登录失败。
use mysql
show tables;
select host,user,authentication_string,plugin from user;
不难看出,root这个用户的密码串为空,校验plugin方式为“auth_socket”,查阅mysql官方文档(https://dev.mysql.com/doc/refman/5.7/en/socket-pluggable-authentication.html#socket-pluggable-authentication-usage),
对 auth_socket 校验方式的说明如下:
auth_socket方式下,client端通过socket方式访问mysql,server端通过socket file的方式校验,对client端的username进行校验即可,也就是说,这种方式不是本地密码登录使用的。
因此,将该方式修改为“mysql_native_password”,并配置root的登录密码,即可使用root用户本地密码的方式进行mysql访问。
mysql Access denied for user 'root'@'localhost'问题解决的更多相关文章
- mysql Access denied for user root@localhost错误解决方法总结(转)
mysql Access denied for user root@localhost错误解决方法总结(转) mysql Access denied for user \'root\'@\'local ...
- MySQL Access denied for user root@localhost 解决方法
今天把本地开发的项目(ThinkPHP 3.2.3)移到虚拟机上(CentOS 6.6,LNMP 1.2,MySQL 5.6.23),配置好 MySQL 之后访问首页,出现: 此时 MySQL 的用户 ...
- 解决mysql“Access denied for user 'root'@'localhost'”
解决mysql“Access denied for user 'root'@'localhost'” 分类: linux 2011-01-14 00:23 147547人阅读 评论(3) 收藏 举报 ...
- mysql Access denied for user \'root\'@\'localhost\'”解决办法总结,下面我们对常见的出现的一些错误代码进行分析并给出解决办法,有需要的朋友可参考一下。
mysql Access denied for user \'root\'@\'localhost\'”解决办法总结,下面我们对常见的出现的一些错误代码进行分析并给出解决办法,有需要的朋友可参考一下. ...
- MySql Access denied for user 'root'@'localhost' (using password:YES) 解决方案
关于昨天下午说的MySQL服务无法启动的问题,解决之后没有进入数据库,就直接关闭了电脑. 今早打开电脑,开始-运行 输入"mysql -uroot -pmyadmin"后出现以下错 ...
- mysql Access denied for user root @localhost (using password:YES)错误
C:\AppServ\MySQL> mysql -u root -p Enter password: ERROR 1045 (28000): Access denied for user 'r ...
- mysql Access denied for user root@localhost错误解决方法总结
原文:http://www.111cn.net/database/mysql/44142.htm Access denied for user 'root'@'localhost' (using pa ...
- mysql—Access denied for user 'root'@'localhost' (using password:NO)
安装mysql未设置初始密码,登录提示Access denied for user 'root'@'localhost' (using password:NO): 解决方案: sudo /etc/i ...
- ubuntu mysql Access denied for user root@localhost
解决办法: 1. vim mysqld.cnf 路径:/etc/mysql/mysql.conf.d 在[mysqld]下添加skip-grant-tables 2. 重启mysql服务 servi ...
随机推荐
- nginx里面的rewrite配置
哎,我需要静静,刚刚在去怎么优化dom层级,发现更新完代码,层级又蹭蹭蹭的往上涨,顿时没脾气了,还是把昨天的nginx配置总结下,增加点动力,昨天前天两天都在搞这个问题,也是搞的没脾气,网上查了很多资 ...
- 在CentOS 6.5上安装NodeJS
CentOS的软件源未包含有最新的nodejs, 需要手动编译安装. 首先安装依赖的库与工具 yum install libtool automake autoconf gcc-c++ openssl ...
- django Ajax介绍
1.Ajax技术 认识ajax之前必须先了解json模块,json(Javascript Obiect Notation,JS对象标记)属于一种轻量级的数据交换格式 json的格式来源于js的格式 ...
- 前端css之文本操作及块级元素和行内元素
1.文本操作 1.1文本颜色(color) 颜色指定方式: 十六进制值 - 如: #FF0000 一个RGB值 - 如: RGB(255,0,0) 颜色的名称 - 如: red 1.2水平对齐方式 ...
- 2.初识CronTrigger
开发工具:Eclipse 代码下载链接:https://github.com/theIndoorTrain/QuartzDemo.git 前言: 在1.初始Quartz里面,我们介绍了quartz的一 ...
- C-net总结
SMB服务器信息块 DHCP动态主机配置协议 STMP简单邮件传输协议 POP(邮件协议) Gnutella 网络分析数据 nslookup DNS(域名系统) 请求注释(RFC)文件 ...
- 你可能不知道的 new.target
new 是构造函数生成实例的命令, ES6为 new 命令引入了 new.target属性.这个属性用于确定构造函数是怎么调用的. 在构造函数中, 如果一个构造函数不是通过 new操作符调用的, ne ...
- 触发ionic弹窗区域外的方法
最近项目需要在页面弹窗的时候需要点击弹窗区域外的地方,其实也就是点击页面HTML就可以关闭弹窗, 首先在controller通过js获取到html的dom节点,然后绑定点击事件,话不多说上代码: ...
- python读写dbf数据库
dbf数据库作为一种简单的数据库,曾经广泛使用.现在在金融领域还是有很多的应用之处,工作中遇到此类的问题,在此记录一下. 1. 读取dbf ''' 读取DBF文件 ''' def readDbfFil ...
- 谷歌浏览器如何调试JS
平常在开发过程中,经常会接触到前端页面.那么对于js的调试那可是家常便饭,谷歌浏览器是常用来调试JS代码的工具,本文主要介绍如何利用谷歌浏览器来调试JS代码,协助我们进行开发工作,加快开发效率. 1. ...