enterpassword

更新时间:2022-12-30 19:59:46 阅读: 评论:0


2022年12月30日发(作者:高一家长会ppt)

LinuxMySQL忘记root密码解决⽅案

在使⽤MySQL数据库时,由于某些原因长时间没有登陆MySQL,或者由于⼯作交接完成度不⾼,导致数据库root登陆密码忘

记,如何解决?

⼀、更改配置⽂件

1、⽤命令编辑/etc/配置⽂件,即:vim/etc/或者vi/etc/或者nano/etc/

2.在[mysqld]下添加skip-grant-tables,然后保存并退出

3.重启mysql服务:rvicemysqldrestart

⼆、更改root⽤户名

1、重启以后,执⾏mysql命令进⼊mysql命令⾏

2、修改root⽤户密码

MySQL>TPassword=PASSWORD('新密码')whereUSER='root';

MySQL>flushprivileges;

MySQL>exit

注意:以上是5.7之前的版本使⽤,5.7之后的版本没有Password字段,password字段改成了authentication_string

mysql>tauthentication_string=password(‘root123456')whereur='root';#修改密码成功

QueryOK,1rowaffected,1warning(0.00c)

Rowsmatched:1Changed:1Warnings:1

mysql>flushprivileges;#⽴即⽣效

QueryOK,0rowsaffected(0.00c)

mysql>quit

Bye

n>mysql-u*******-p#以该⽤户登录成功.

Enterpassword:********

…………………………

mysql>

注意:5.7之后的版本,密码不能过于简单,如123456,否则会报以下错误:ERROR1819(HY000):Your

passworddoesnotsatisfythecurrentpolicyrequirements。

此时,要么把密码设置复杂点,要么修改配置:

这个其实与validate_password_policy的值有关。

validate_password_policy有以下取值:

默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,⼩写或⼤写字母,特殊字符。

有时候,只是为了⾃⼰测试,不想密码设置得那么复杂,譬如说,我只想设置root的密码为123456。

必须修改两个全局参数:

⾸先,修改validate_password_policy参数的值

mysql>tglobalvalidate_password_policy=0;

QueryOK,0rowsaffected(0.00c)

1

2

validate_password_length(密码长度)参数默认为8,我们修改为1

mysql>tglobalvalidate_password_length=1;

QueryOK,0rowsaffected(0.00c)

1

2

4,完成之后再次执⾏修改密码语句即可成功

mysql>alterur'root'@'localhost'identifiedby'123456';

QueryOK,0rowsaffected(0.00c)

3、最后把/etc/中的skip-grant-tables注释掉,然后重启mysql,即:rvicemysqldrestart

OK,下⾯我们就可以使⽤root新的密码登录MySQL了。

以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

本文发布于:2022-12-30 19:59:46,感谢您对本站的认可!

本文链接:http://www.wtabcd.cn/fanwen/fan/90/61314.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

上一篇:hoduao
标签:enterpassword
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图