MySQL单实例重置密码的两种方法
admin
2023-05-17 01:42:01
0

MySQL单实例重置密码的两种方法


在工作学习中,我们有时会忘记数据库的密码,下面是MySQL单实例密码重置的步骤。

说明:

(1)[root@mysql1 ~]# cat /etc/redhat-release

CentOS release 6.7 (Final)

(2)[root@mysql1 ~]# mysql --version

mysql  Ver 14.14 Distrib 5.7.13, for Linux (i686) using  EditLine wrapper

主要步骤如下:

  1. 首先停止MySQL

    [root@mysql1 ~]# /etc/init.d/mysqld stop

    /etc/init.d/mysqld: line 46: /usr/local/mysql: is a directory

    /etc/init.d/mysqld: line 47: /usr/local/mysql/data: is a directory

    Shutting down MySQL. SUCCESS!

    查看MySQL的状态:

    [root@mysql1 ~]# /etc/init.d/mysqld status

    /etc/init.d/mysqld: line 46: /usr/local/mysql: is a directory

    /etc/init.d/mysqld: line 47: /usr/local/mysql/data: is a directory

     ERROR! MySQL is not running

    查看MySQL的进程:

    [root@mysql1 ~]# ps aux|grep mysql|grep -v grep

  2. 使用--skip-grant-tables启用MySQL忽略登入授权验证

    [root@mysql1 ~]# mysqld_safe --skip-grant-tables --user=mysql &

    [1] 6559

    [root@mysql1 ~]# 2017-07-30T14:23:38.600285Z mysqld_safe Logging to '/usr/local/mysql/data/mysqld.err'.

    2017-07-30T14:23:38.640326Z mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data

  3. 无需密码即可登入MySQL

    [root@mysql1 ~]# mysql

    MySQL单实例重置密码的两种方法

  4. 重置root密码

    说明:新安装的MySQL5.7,登录时提示密码错误,安装的时候并没有更改密码,后来通过免密码登录的方式更改密码,输入update mysql.user set password=password('wtf123') where user='root' and host='localhost'时提示ERROR 1054 (42S22): Unknown column 'password' in 'field list',原来是mysql5.7数据库下已经没有password这个字段了,password字段改成了authentication_string.

    mysql> update mysql.user set authentication_string=password('wtf123') where user='root’and host='localhost';

    Query OK, 1 row affected, 1 warning (0.00 sec)

    Rows matched: 1  Changed: 1  Warnings: 1

    MySQL单实例重置密码的两种方法

    刷新:mysql> flush privileges;

    退出:mysql> quit

    说明:不能使用set password=password('wtf1234');

    MySQL单实例重置密码的两种方法

  5. 重启服务再登入

    [root@mysql1 ~]# /etc/init.d/mysqld restart

    [root@mysql1 ~]# mysql -uroot -pwtf123

    说明:查看数据库密码命令:

    mysql> select user,host,authentication_string from mysql.user;

    MySQL单实例重置密码的两种方法




扩展:通过修改/etc/my.cnf 配置文件来重置mysql密码

1.打开mysql的配置文件,命令:vim /etc/my.cnf 。在配置文件中新增一行 skip-grant-tables,结果如下图所示:

MySQL单实例重置密码的两种方法

2.保存并退出!

3.重启mysqld,命令:service mysqld restart 

4.无需密码即可登入MySQL

 [root@mysql1 ~]# mysql

  mysql> update mysql.user set authentication_string=password('123456') where        user='root’and host='localhost';

 flush privileges; #刷新权限

MySQL单实例重置密码的两种方法

退出:quit

5.退出后还原my.cnf重启,命令如下:

vim /etc/my.cnf  #打开mysql配置文件,将skip-grant-tables前面加#

/etc/init.d/mysqld restart  #重新启动mysql

用新密码登入mysql数据库,命令如下:

#mysql –uroot –p123456 即可正常登入数据库了!




相关内容

热门资讯

共建数字生态圈 提升互联互通水... 数字化是提升京津冀互联互通水平、推进现代化首都都市圈建设的重要抓手。京津冀算力资源丰富,三地如何以数...
惊艳化石保留了远古海生爬行动物... 来源:环球科学 化石中内脏的保存情况,图中分别为正常光照下(A和B)和紫外光加黄色滤光片下(C)。...
原创 炸... #骁龙 8E6 新机定价危机深度分析 首先拆解骁龙 8E6 定价暴涨的底层硬件成本逻辑,两大核心成...
哈佛华人教授尹希,首谈GPT-... 新智元报道 哈佛最年轻华人正教授,入职OpenAI后首次出镜! 深度体验GPT-5.6后,尹希直言,...
驻日美军多名士兵涉嫌酒驾和猥亵... 日本冲绳县近日发生多起驻日美军士兵被捕案件,其中两人涉嫌酒驾,一人涉嫌公然猥亵。△驻日美军嘉手纳基地...
“钱转给村干部,医保却没交”,... 福建南安金淘镇的谢先生,今年2月查出癌症晚期,治疗期间却发现没办法医保报销。谢先生的女儿谢女士说,多...
村上春树新作,3天就被AI译出... 村上春树的小说新作《夏帆》,在日本出版没几天,就被一位中国网友用AI译成中文,耗时耗资成本都极低。很...
去青海察尔汗盐湖捡盐块留念成新... 近日,一网友发帖,自己从青海察尔汗盐湖景区捡拾盐块带回家做纪念,评论区有人称盐块存在放射性,引发关注...
卢秀燕呼吁蓝白合:2026“倒... 据香港中评社8月2日报道,国民党籍台中市长卢秀燕今天受邀出席台湾民众党7周年党庆,呼吁蓝白合坚定前行...
8年后回应姗姗来迟,真相还有人... 八年了,李小璐想起来回应“做头发”事件了。而且这次,她一次性抛出了不少新信息,表示广为流传的“做头发...