Ubuntu/Debian(Raspbian)进入MySQL报错:ERROR 1698 (28000): Access denied for user 'root'@'localhost'的解决方法

本文主要是介绍Ubuntu/Debian(Raspbian)进入MySQL报错:ERROR 1698 (28000): Access denied for user 'root'@'localhost'的解决方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

树莓派安装MySQL未提示设置密码,之后在sudo下无需密码即可连接,其它输入报错ERROR 1698 (28000)

附:远程连接MySQL出现1130错误解决方法

# 问题场景:

在树莓派3B+,系统Raspbian(Debian9.4),安装MySQL:

 sudo apt-get install mysql-serversudo apt-get install mysql-client

安装过程中未提示设置密码。

检查进程:

sudo netstat -tap | grep mysql

显示:

tcp        0      0 localhost:mysql         0.0.0.0:*               LISTEN      1369/mysqld

说明数据库服务成功启动。

尝试登录mysql:

mysql -u root -p

报错:

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

重启服务:

sudo service mysql restart

还是报错:ERROR 1698 (28000)!!!

是不是很气?

打开配置文件:

sudo vim /etc/mysql/debian.cnf

两个root账号密码竟然为空,也没有用随机值填充。

# 目前遇到的问题:

        安装mysql-server的过程没有提示输入root的password
        安装成功后,输入指令mysql -uroot,提示Access denied for user ‘root’@’localhost’
        输入sudo mysql -uroot可以直接连接成功
        输入sudo mysql -uroot -p后回车输入任意password也可以直接连接成功
        输入mysql -h 127.0.0.1 -P 3306 -uroot -p提示Access denied for user ‘root’@’localhost’

# 解决方法:

sudo mysql -u root

成功登录!

但问题彻底解决了吗?……还没有!

  • 需要给root设置password
  • 需要将用户表中plugin字段由auth_plugin设置成mysql_native_password

修改密码:

noneDataBase> use mysql;
mysql> UPDATE user SET password=PASSWORD('123456') WHERE user='root';
mysql> UPDATE user SET plugin='mysql_native_password' WHERE user='root';
mysql> FLUSH PRIVILEGES;
mysql> exit;

重启服务:

sudo systemctl restart mysqlsudo systemctl status mysql

问题已经解决(无论是否加sudo,都必须使用正确的密码,才能连接数据库)

# 如需远程连接MySQL:

sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf将bind-address=127.0.0.1改成bind-address=0.0.0.0
然后:
sudo rebootvia……

对了,如果你需要完整卸载MySQL:

sudo apt-ge autoremove --purge mysql-server
sudo apt-get remove mysqyl-server
sudo apt-get remove mysql-common #重要
sudo apt-get autoremove mysql-server

Thanks Kevin_miu

# 远程连接MySQL出现1130错误解决方法:

mysql -u root -pnoneDataBase>use mysql;mysql>select 'host' from user where user='root';mysql>update user set host = '%' where user ='root';mysql>flush privileges;mysql>select 'host'   from user where user='root';

修改后即可尝试远程连接,如果不行建议:sudo systemctl restart mysql或者reboot。

这篇关于Ubuntu/Debian(Raspbian)进入MySQL报错:ERROR 1698 (28000): Access denied for user 'root'@'localhost'的解决方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/588544

相关文章

Android 12解决push framework.jar无法开机的方法小结

《Android12解决pushframework.jar无法开机的方法小结》:本文主要介绍在Android12中解决pushframework.jar无法开机的方法,包括编译指令、框架层和s... 目录1. android 编译指令1.1 framework层的编译指令1.2 替换framework.ja

MySQL主从同步延迟问题的全面解决方案

《MySQL主从同步延迟问题的全面解决方案》MySQL主从同步延迟是分布式数据库系统中的常见问题,会导致从库读取到过期数据,影响业务一致性,下面我将深入分析延迟原因并提供多层次的解决方案,需要的朋友可... 目录一、同步延迟原因深度分析1.1 主从复制原理回顾1.2 延迟产生的关键环节二、实时监控与诊断方案

在.NET平台使用C#为PDF添加各种类型的表单域的方法

《在.NET平台使用C#为PDF添加各种类型的表单域的方法》在日常办公系统开发中,涉及PDF处理相关的开发时,生成可填写的PDF表单是一种常见需求,与静态PDF不同,带有**表单域的文档支持用户直接在... 目录引言使用 PdfTextBoxField 添加文本输入域使用 PdfComboBoxField

SQLyog中DELIMITER执行存储过程时出现前置缩进问题的解决方法

《SQLyog中DELIMITER执行存储过程时出现前置缩进问题的解决方法》在SQLyog中执行存储过程时出现的前置缩进问题,实际上反映了SQLyog对SQL语句解析的一个特殊行为,本文给大家介绍了详... 目录问题根源正确写法示例永久解决方案为什么命令行不受影响?最佳实践建议问题根源SQLyog的语句分

慢sql提前分析预警和动态sql替换-Mybatis-SQL

《慢sql提前分析预警和动态sql替换-Mybatis-SQL》为防止慢SQL问题而开发的MyBatis组件,该组件能够在开发、测试阶段自动分析SQL语句,并在出现慢SQL问题时通过Ducc配置实现动... 目录背景解决思路开源方案调研设计方案详细设计使用方法1、引入依赖jar包2、配置组件XML3、核心配

Java NoClassDefFoundError运行时错误分析解决

《JavaNoClassDefFoundError运行时错误分析解决》在Java开发中,NoClassDefFoundError是一种常见的运行时错误,它通常表明Java虚拟机在尝试加载一个类时未能... 目录前言一、问题分析二、报错原因三、解决思路检查类路径配置检查依赖库检查类文件调试类加载器问题四、常见

MySQL数据库约束深入详解

《MySQL数据库约束深入详解》:本文主要介绍MySQL数据库约束,在MySQL数据库中,约束是用来限制进入表中的数据类型的一种技术,通过使用约束,可以确保数据的准确性、完整性和可靠性,需要的朋友... 目录一、数据库约束的概念二、约束类型三、NOT NULL 非空约束四、DEFAULT 默认值约束五、UN

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设

电脑找不到mfc90u.dll文件怎么办? 系统报错mfc90u.dll丢失修复的5种方案

《电脑找不到mfc90u.dll文件怎么办?系统报错mfc90u.dll丢失修复的5种方案》在我们日常使用电脑的过程中,可能会遇到一些软件或系统错误,其中之一就是mfc90u.dll丢失,那么,mf... 在大部分情况下出现我们运行或安装软件,游戏出现提示丢失某些DLL文件或OCX文件的原因可能是原始安装包

电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案

《电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案》最近有不少兄弟反映,电脑突然弹出“mfc100u.dll已加载,但找不到入口点”的错误提示,导致一些程序无法正... 在计算机使用过程中,我们经常会遇到一些错误提示,其中最常见的就是“找不到指定的模块”或“缺少某个DL