MySQL8.0正确修改密码的姿势[通俗易懂]

MySQL8.0正确修改密码的姿势[通俗易懂]mysql更新完密码,总是拒绝连接、登录失败?MySQL8.0不能通过直接修改mysql.user表来更改密码。正确更改密码的方式备注:清空root密码MySQL8.0不能通过直接修改mysql.user表来更改密码。因为authentication_string字段下只能是MySQL加密后的43位字符串密码,其他的导致错误。错误不报出,但是无法再登录mysql,总是会提示无…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

mysql 更新完密码,总是拒绝连接、登录失败?MySQL8.0 不能通过直接修改 mysql.user 表来更改密码。正确更改密码的方式备注: 清空root密码
MySQL8.0 不能通过直接修改 mysql.user 表来更改密码。

因为authentication_string字段下只能是MySQL加密后的43位字符串密码,其他的导致错误。错误不报出,但是无法再登录mysql,总是会提示 无法认证。
参考:MySQL8.0

mysql> USE mysql;
Database changed
mysql> UPDATE user SET authentication_string="123456" WHERE user="root";
Query OK, 1 row affected (0.39 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> FLUSH privileges;  # 刷新保存
Query OK, 0 rows affected (0.13 sec)

mysql 5.7.9 之后取消了password 函数,authentication_string=password("123456") 会报错

C:\WINDOWS\system32>mysql -u root -p
Enter password: ******
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)
1234567891011121314
如果 你已经这样更改密码,并且导致了无法进入mysql。本人表示同情之时,还为了你提供了详细的解决方案。请查看本文备注:清空root 密码
正确更改密码的方式

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY "your_password";
mysql> USE mysql;
Database changed
mysql> ALTER USER 'root'@'localhost' IDENTIFIEED WITH mysql_native_password BY "markjun";
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IDENTIFIEED WITH mysql_native_password BY "markjun"' at line 1
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY "markjun";
Query OK, 0 rows affected (0.18 sec)

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY "123456";
Query OK, 0 rows affected (0.08 sec)

mysql> SELECT user, authentication_string FROM user;
+------------------+------------------------------------------------------------------------+
| user             | authentication_string                                                  |
+------------------+------------------------------------------------------------------------+
| mysql.infoschema | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| mysql.session    | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| mysql.sys        | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| root             | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9                              |
+------------------+------------------------------------------------------------------------+
4 rows in set (0.00 sec)

mysql> FLUSH privileges;
Query OK, 0 rows affected (0.38 sec)

mysql> quit;
Bye

F:\MySQL\mysql-8.0.13-winx64\bin>mysql -u root -p
Enter password: *******
...

mysql>
  • 备注: 清空root密码

    停止 MySQL 任务 net stop MySQL

    mysqld 命令 mysqld –console –skip-grant-tables –shared-memory

    无密码进入mysql mysql -u root

    清空root 密码 UPDATE user SET authentication_string=”” WHERE user=“root”;

另一个终端无密码进入

F:\MySQL\mysql-8.0.13-winx64\bin>mysql -u root -p
Enter password: *******
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

F:\MySQL\mysql-8.0.13-winx64\bin>mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 7
...
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> USE mysql;
Database changed

mysql> SELECT user, authentication_string FROM user;
+------------------+------------------------------------------------------------------------+
| user             | authentication_string                                                  |
+------------------+------------------------------------------------------------------------+
| mysql.infoschema | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| mysql.session    | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| mysql.sys        | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| root             | 123456                                                                |
+------------------+------------------------------------------------------------------------+
4 rows in set (0.34 sec)

mysql> UPDATE user SET authentication_string="" WHERE user="root";
Query OK, 1 row affected (0.20 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> SELECT user, authentication_string FROM user;
+------------------+------------------------------------------------------------------------+
| user             | authentication_string                                                  |
+------------------+------------------------------------------------------------------------+
| mysql.infoschema | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| mysql.session    | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| mysql.sys        | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| root             |                                                                        |
+------------------+------------------------------------------------------------------------+
4 rows in set (0.00 sec)

mysql> FLUSH privileges;
Query OK, 0 rows affected (0.10 sec)

mysql> quit;
Bye

停止 mysqld 任务,Ctrl+C 结束任务,或者直接关闭 运行 mysqld 的 cmd 终端。

需要先停止运行上述 mysqld 任务,否则报错

F:\MySQL\mysql-8.0.13-winx64\bin>net start mysql
MySQL 服务正在启动 .
MySQL 服务无法启动。

服务没有报告任何错误。

请键入 NET HELPMSG 3534 以获得更多的帮助。

先停止上述 mysqld 任务

F:\MySQL\mysql-8.0.13-winx64\bin>net start mysql
MySQL 服务正在启动 ...
MySQL 服务已经启动成功。

现在 mysql root 已经没有了密码

F:\MySQL\mysql-8.0.13-winx64\bin>mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.

...
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170161.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 打包pycharm里的文件_eclipse打包成exe文件

    打包pycharm里的文件_eclipse打包成exe文件前期准备:安装pyinstaller方法一:在PyCharm中打包点击底部的【Terminal】打开终端,输入命令pyinstaller–console–onefile***.py或者输入命令pyinstaller-F-w*.py成功后在工程目录下/dist文件夹中会有打包好的exe文件方法二:在源码所在目录下,进入DOS窗口,输入pyinstaller-F-w*.py-F(注意大写)是所有库文件打包成一个exe,-w是不出黑色控制台窗口。不加-F参.

    2022年8月27日
    6
  • 用LM方法的matlab求解,matlab中LM算法「建议收藏」

    用LM方法的matlab求解,matlab中LM算法「建议收藏」symsabyxreal;f=a*exp(-b*x);Jsym=jacobian(f,[ab]);%拟合用数据。参见《数学试验》,p190,例2data_1=[0.250.511.523468];obs_1=[19.2118.1515.3614.1012.899.327.455.243.01];%2.LM算法%初始猜测sa0=10;b0=0.5…

    2022年10月1日
    5
  • kalilinux更换源(pip3换源)

    文件位置:/etc/apt/soucrce.list注释kali原来的源,下面添加任意一个源即可#kali官方源debhttp://http.kali.org/motomainnon-freecontribdeb-srchttp://http.kali.org/motomainnon-freecontribdebhttp://security.kali.org/moto/updatesmaincontribnon-freedeb-srchttp://

    2022年4月10日
    297
  • stm32cubemx软件库_STM32cube

    stm32cubemx软件库_STM32cube前言:本系列教程将HAL库与STM32CubeMX结合在一起讲解,使您可以更快速的学会各个模块的使用在我们的HAL库中,对硬件SPI函数做了很好的集成,使得之前SPI几百行代码,在HAL库中,只需要寥寥几行就可以完成那么这篇文章将带你去感受下它的优异之处,这些优异的函数,也正是HAL库的优点所在所用工具:1、芯片:STM32F103ZET62、STM32CubeMx软件3、IDE:…

    2022年8月31日
    5
  • 我个人中意的VS2017/VS2019插件,推荐给大家(#^.^#)

    我个人中意的VS2017/VS2019插件,推荐给大家(#^.^#)1、VS插件,微软官网https://marketplace.visualstudio.com/https://visualstudio.microsoft.com/zh-hans/vs/features/extend/–扩展VisualStudioIDE,入门教程https://marketplace.visualstudio.com/publishers/Microso…

    2022年5月9日
    48
  • BeanUtils中copyProperties的使用[通俗易懂]

    BeanUtils中copyProperties的使用[通俗易懂]BeanUtils中copyProperties的作用是将一个对象中的属性值赋值(拷贝)给另一个对象中对应的属性。其中赋值成功的属性对应的属性名和属性类型必须相同,否则对应的属性值不会从一个对象赋值给另一个对象,但是此时不影响其他属性值的拷贝。1、实体类publicclassModel01{privateStringname;privateintage;

    2022年10月3日
    4

发表回复

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

关注全栈程序员社区公众号