mysql登录错误:’Access denied for user ‘root’@’localhost’

mysql登录错误:’Access denied for user ‘root’@’localhost’首先是不知道怎么忽然mysql用命令行,workbench都登录不了,都提示’Access denied for user ‘root’@’localhost’。 数据库卸载重装了几次都不行。好像感觉

首先是不知道怎么忽然mysql用命令行,workbench都登录不了,都提示”Access denied for user “root”@”localhost”。
数据库卸载重装了几次都不行。好像感觉数据清理不干净。解决的过程遇到的坑,这里记录分享下。

有效的操作记录下:

1、首先是跳过权限登录mysql,查看user表,

停止mysql服务~$ sudo service mysql stop

以安全模式启动MySQL~$ sudo mysqld_safe --skip-grant-tables &

注意
可能提示mysqld_safe Directory "/var/run/mysqld" for UNIX socket file don"t exist

解决方法:(笔者尝试发现必须加sudo)
sudo mkdir -p /var/run/mysqld

sudo chown mysql:mysql /var/run/mysqld

再次执行上面安全模式启动mysql ~$ sudo mysqld_safe --skip-grant-tables &

这次提示语句显示了,mysqld_safe Staring mysqld deamon with database from /var/lib/mysql

这次登录可以不用密码:mysql -u root 回车就登录了
sql语句查询mysql.user表的情况,如下:
加图片(以后补)

还有人提议如下这么做,没尝试
Open & Edit /etc/my.cnf or /etc/mysql/my.cnf, depending on your distro.
Add skip-grant-tables under [mysqld]

2、发现user的plugin为socket_plugin,改为mysql_native_password

修改root的plugin权限:

update mysql.user set authentication_string=PASSWORD("newPwd"), plugin="mysql_native_password" where user="root";

flush privileges;

quit;

(注意这里修改一定要正确,免得跟笔者一样,粗心的把plugin修改的内容少些了一个字母,又有下面的折腾)

3、user表还有其他用户,root不能登录,用其他的用户登录也行啊。查询了发现一下有效操作:

在mysql的安装目录,一般在 /etc/mysql里面有个debain.cnf文件,里面有user,password,用这个用了登录,密码最后复制,然后就又可以修改user表root的plugin,操作同上。

重启mysql服务, sudo service mysql restart;
用root用户就可以登录。

参考博客
MySQL ERROR 1698 (28000) 错误 https://www.cnblogs.com/leolztang/p/5094930.html
mysql 查看当前使用的配置文件my.cnf的方法 https://blog.csdn.net/fdipzone/article/details/52705507
linux — Ubuntu查看修改mysql的登录名和密码、安装phpmyadmin https://www.cnblogs.com/hf8051/p/4775627.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/10800.html

(0)
上一篇 2022-12-21
下一篇 2022-12-21

相关推荐

  • 5000字总结MySQL单表查询,新手看这一篇足够了!「终于解决」

    5000字总结MySQL单表查询,新手看这一篇足够了!「终于解决」通过写SQL查询,我们可以发现很多简单查询语句主要就是由一些算术操作、字段操作、函数还有各种子句构成的,今天我们从这个角度对MySQL单表查询的基础知识进行一个汇总。 __计算:__ 计算字段 算术操

    2023-02-19
    87
  • Python Canvas绘图库:用代码轻松画出丰富多彩的图形

    Python Canvas绘图库:用代码轻松画出丰富多彩的图形Python是一种易学易用的高级编程语言,具有简洁而清晰的语法,可以应用于多种领域,比如爬虫、数据分析、机器学习等。Canvas绘图库是Python中的一个功能强大的库,可以使用代码轻松地绘制出各种形状和图像,从而创建出多种视觉效果。本文将介绍Python Canvas绘图库在绘图方面的基础知识和一些应用实例。

    2024-03-11
    32
  • Python参数定义

    Python参数定义函数或方法中经常需要传递参数,Python提供了多种类型的参数来实现参数的传递,以及多种不同的方法来定义函数的参数。在Python中,参数的定义可以分为两类:位置参数和关键字参数。

    2024-01-08
    67
  • mysql单行函数总结_单行与双行之间如何复制粘贴

    mysql单行函数总结_单行与双行之间如何复制粘贴第07章 MySQL单行函数 1. 函数的理解 1.1 什么是函数 函数在计算机语言的使用中贯穿始终,函数的作用是什么呢?它可以把我们经常使用的代码封装起来,需要的时候直接调用即可。这样既提高了代码效

    2023-04-29
    98
  • Python切片的用法

    Python切片的用法切片是指对于某个序列,可以通过一定的方式选择其中的一部分,并返回一个新的序列。切片的操作是非常常用且高效的,特别是在数据处理和处理大数据量时。Python提供了很简单的方法对序列进行切片。

    2024-04-09
    22
  • MySQL学习笔记(26):日志

    MySQL学习笔记(26):日志本文更新于2020-05-03,使用MySQL 5.7,操作系统为Deepin 15.4。 MySQL有4种日志:错误日志、二进制日志(BINLOG)、查询日志、慢查询日志。 错误日志 错误日志记录了

    2023-03-28
    122
  • Python实现最小正无穷数

    Python实现最小正无穷数在计算机科学中,最小正无穷数是指一个数,它比任何正实数都大,但比任何正无穷数都小。在Python中,可以使用float(‘inf’)表示正无穷数,但如何表示最小正无穷数呢?

    2023-12-20
    66
  • 如何使用 sql 存储过程简化复杂的操作步骤_sql存储过程入门

    如何使用 sql 存储过程简化复杂的操作步骤_sql存储过程入门本文介绍什么是 SQL 存储过程,为什么要使用存储过程,如何使用存储过程,以及创建和使用存储过程的基本语法。 一、存储过程 迄今为止,我们使用的大多数 SQL 语句都是针对一个或多个表的单条语句。并非

    2023-05-17
    88

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注