找回mysql服务器root密码的很重要的一步是跳过权限表

发布网友 发布时间:2022-04-23 03:36

我来回答

2个回答

懂视网 时间:2022-04-30 05:19

--datadir="$datadir"--pid-file="$mysqld_pid_file_path" $other_args >/dev/null2>&1 &

      wait_for_pid created "$!""$mysqld_pid_file_path"; return_value=$?
保存退出

mysql> use mysql

Readingtable information for completion of table and column names

You canturn off this feature to get a quicker startup with -A

 

Databasechanged

mysql> select user,host,password from user;

+---------+-----------------------+-------------------------------------------+

|user    | host                  | password                                  |

+---------+-----------------------+-------------------------------------------+

|root    | localhost             |*4941369BD46398A2BDEEC85411065D7137D4EA0F |

|root    | localhost.localdomain |*4941369BD46398A2BDEEC85411065D7137D4EA0F |

|root    | 127.0.0.1             |*4941369BD46398A2BDEEC85411065D7137D4EA0F |

|tianke  | %                     |*A399693A49F7EC7C548D0FC376FA52AD293A552F |

|tianke1 | %                     |*EEAC51414F1AE247D67F47A875BDB134CF39986C |

+---------+-----------------------+-------------------------------------------+

5 rowsin set (0.01 sec)

修改root密码

mysql> update user setpassword=password(‘123456‘)  whereuser=‘root‘;

QueryOK, 3 rows affected (0.00 sec)

Rowsmatched: 3  Changed: 3  Warnings: 0

然后将服务再次停掉,然后再将掺数改回重启mysql即可。

版权声明:本文为博主原创文章,未经博主允许不得转载。

Mysql找回管理员密码

标签:

热心网友 时间:2022-04-30 02:27

我给你回答更为详细的解答吧
一、关闭mysqld服务。服务名称则根据电脑上的实际服务名来决定,windows下则用以管理员身份运行cmd.exe程序,然后输入:net stop mysql的服务名称。
二、打开一个cmd窗口,以跳过权限检查的方式启动mysql服务。在cmd窗口中输入如下:
mysqld --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.7\my.ini" --console --skip-grant-tables。--defaults-file选项指定mysql服务器的默认配置文件。而--skip-grant-tables选项表示忽略权限检查。这个窗口一直开着
三、更新名称为mysql这个数据库名中的user表中的root用户名的密码字段authentication_string。操作如下:
先开启另一个cmd窗口,然后输入命令:mysql --user=root -p
然后直接回车,不用输入密码
然后查看该服务器上的所有数据库名称,输入命令:show databases;
然后进入名称为mysql的这个数据库,输入命令:use mysql;
然后修改密码:update user set authentication_string=password('1314520') where user='root';
然后刷新权限输入命令:flush privileges;
再退出输入命令:quit;
最后重启服务器:net start mysql57;
四、到此,mysql服务的root权限的密码重置了。注意上面的authentication_string字段,因版本不同而有所不同,mysql5.7版本的是authentication_string字段,以前的版本有的是password字段;赋值密码时,需要使用数据库自带的password函数,而不能直接赋值为明文密码。另外还有可能因为The innodb_system data file 'ibdata1' must be writable服务器无法启动,所以建议重启该服务前删除mysql的配置文件my.ini中datadir所代表的目录下面的两个文件ib_logfile0,ib_logfile1这两个文件。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com