如何查看MySQL连接的root密码

 更新时间:2017年01月04日 09:17:26   作者:宫城  
前几天在用Navicat去连本地的MySQL的时候发现我已经忘了密码了,试了网上很多方式都不行…后来发现其实可以自己直接去看当初设置的密码,下面将方法总结出来分享给大家,有需要的朋友们可以参考借鉴,下面来一起看看吧。

本文给大家分享的是查看MySQL连接的root密码的方法,下面话不多说来来看正文:

1.首先我们进到MySQL的bin目录下

➜ cd /usr/local/mysql/bin

2.切换成root身份

➜ bin sudo su

3.跨过权限的验证

sh-3.2# ./mysqld_safe --skip-grant-tables &
[1] 9451
sh-3.2# 2017-01-03T15:40:10.6NZ mysqld_safe Logging to '/usr/local/mysql/data/yzydeMacBook-Pro.local.err'.
2017-01-03T15:40:10.6NZ mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data

4.以root身份登录MySQL

./mysql -uroot
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.12 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

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

5.选择mysql数据库

mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

6.显示mysql数据库下的表

mysql> show tables;
+---------------------------+
| Tables_in_mysql   |
+---------------------------+
| columns_priv    |
| db      |
| engine_cost    |
| event      |
| func      |
| general_log    |
| gtid_executed    |
| help_category    |
| help_keyword    |
| help_relation    |
| help_topic    |
| innodb_index_stats  |
| innodb_table_stats  |
| ndb_binlog_index   |
| plugin     |
| proc      |
| procs_priv    |
| proxies_priv    |
| server_cost    |
| servers     |
| slave_master_info   |
| slave_relay_log_info  |
| slave_worker_info   |
| slow_log     |
| tables_priv    |
| time_zone     |
| time_zone_leap_second  |
| time_zone_name   |
| time_zone_transition  |
| time_zone_transition_type |
| user      |
+---------------------------+
31 rows in set (0.00 sec)

7.很明显我们需要的密码是存在user这个表下的,所以我们直接看user的表结构是怎么样的

mysql> show columns from user;
+------------------------+-----------------------------------+------+-----+-----------------------+-------+
| Field     | Type        | Null | Key | Default    | Extra |
+------------------------+-----------------------------------+------+-----+-----------------------+-------+
| Host     | char(60)       | NO | PRI |      |  |
| User     | char(32)       | NO | PRI |      |  |
| Select_priv   | enum('N','Y')      | NO |  | N      |  |
| Insert_priv   | enum('N','Y')      | NO |  | N      |  |
| Update_priv   | enum('N','Y')      | NO |  | N      |  |
| Delete_priv   | enum('N','Y')      | NO |  | N      |  |
| Create_priv   | enum('N','Y')      | NO |  | N      |  |
| Drop_priv    | enum('N','Y')      | NO |  | N      |  |
| Reload_priv   | enum('N','Y')      | NO |  | N      |  |
| Shutdown_priv   | enum('N','Y')      | NO |  | N      |  |
| Process_priv   | enum('N','Y')      | NO |  | N      |  |
| File_priv    | enum('N','Y')      | NO |  | N      |  |
| Grant_priv    | enum('N','Y')      | NO |  | N      |  |
| References_priv  | enum('N','Y')      | NO |  | N      |  |
| Index_priv    | enum('N','Y')      | NO |  | N      |  |
| Alter_priv    | enum('N','Y')      | NO |  | N      |  |
| Show_db_priv   | enum('N','Y')      | NO |  | N      |  |
| Super_priv    | enum('N','Y')      | NO |  | N      |  |
| Create_tmp_table_priv | enum('N','Y')      | NO |  | N      |  |
| Lock_tables_priv  | enum('N','Y')      | NO |  | N      |  |
| Execute_priv   | enum('N','Y')      | NO |  | N      |  |
| Repl_slave_priv  | enum('N','Y')      | NO |  | N      |  |
| Repl_client_priv  | enum('N','Y')      | NO |  | N      |  |
| Create_view_priv  | enum('N','Y')      | NO |  | N      |  |
| Show_view_priv   | enum('N','Y')      | NO |  | N      |  |
| Create_routine_priv | enum('N','Y')      | NO |  | N      |  |
| Alter_routine_priv  | enum('N','Y')      | NO |  | N      |  |
| Create_user_priv  | enum('N','Y')      | NO |  | N      |  |
| Event_priv    | enum('N','Y')      | NO |  | N      |  |
| Trigger_priv   | enum('N','Y')      | NO |  | N      |  |
| Create_tablespace_priv | enum('N','Y')      | NO |  | N      |  |
| ssl_type    | enum('','ANY','X509','SPECIFIED') | NO |  |      |  |
| ssl_cipher    | blob        | NO |  | NULL     |  |
| x509_issuer   | blob        | NO |  | NULL     |  |
| x509_subject   | blob        | NO |  | NULL     |  |
| max_questions   | int(11) unsigned     | NO |  | 0      |  |
| max_updates   | int(11) unsigned     | NO |  | 0      |  |
| max_connections  | int(11) unsigned     | NO |  | 0      |  |
| max_user_connections | int(11) unsigned     | NO |  | 0      |  |
| plugin     | char(64)       | NO |  | mysql_native_password |  |
| authentication_string | text        | YES |  | NULL     |  |
| password_expired  | enum('N','Y')      | NO |  | N      |  |
| password_last_changed | timestamp       | YES |  | NULL     |  |
| password_lifetime  | smallint(5) unsigned    | YES |  | NULL     |  |
| account_locked   | enum('N','Y')      | NO |  | N      |  |
+------------------------+-----------------------------------+------+-----+-----------------------+-------+
45 rows in set (0.02 sec)

8.表的内容比较多,但是我们很容易就发现,密码其实是存在authentication_string字段下的,那我们就可以直接读User内容为root的密码了

mysql> select authentication_string from user where User='root';
+-------------------------------------------+
| authentication_string      |
+-------------------------------------------+
| *781D25322166DB7FF99BA4A1FA5ED30439A60DDE |
+-------------------------------------------+
1 row in set (0.01 sec)

OK,那我们拿着这个密码到Navicat试试看

 

总结

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

相关文章

  • MySQL文本文件导入及批处理模式应用说明

    MySQL文本文件导入及批处理模式应用说明

    MySQL文本文件导入及批处理模式应用说明,需要的朋友可以参考下。
    2011-09-09
  • 用C语言操作MySQL数据库的通用方法

    用C语言操作MySQL数据库的通用方法

    在为MySQL提供接口方面,C语言具有更好的安全性和性能,本篇文章介绍了C语言操作MySQL数据库的通用方法,需要了解的朋友可以参考下
    2015-07-07
  • Mysql 查询数据库容量大小的方法步骤

    Mysql 查询数据库容量大小的方法步骤

    这篇文章主要介绍了Mysql 查询数据库容量大小的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06
  • 详解mysql中的存储引擎

    详解mysql中的存储引擎

    本文主要介绍什么是存储引擎?各种存储引擎的特性,常用存储引擎及适用场景,存储引擎在mysql中的使用以及mysql的工作流程,希望对您的学习有所帮助。
    2020-10-10
  • Mysql在线回收undo表空间实战记录

    Mysql在线回收undo表空间实战记录

    这篇文章主要给大家介绍了关于Mysql在线回收undo表空间的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Mysql具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • ERROR 2002 (HY000): Can''t connect to local MySQL server through socket ''/tmp/mysql.sock''

    ERROR 2002 (HY000): Can''t connect to local MySQL server thr

    mysql 支持 socket 和 TCP/IP 连接。那么 mysql.sock 这个文件有什么用呢?本文给大家介绍的非常详细,需要的朋友参考下吧
    2019-11-11
  • mysql中使用sphinx搜索子域名需注意的问题

    mysql中使用sphinx搜索子域名需注意的问题

    比如搜索jb51.net会把www.jb51.net、jb51.net、sc.jb51.net等都搜索出来
    2013-02-02
  • node连接mysql数据库遇到的问题和解决方案

    node连接mysql数据库遇到的问题和解决方案

    这篇文章主要介绍了node连接mysql数据库遇到的问题和解决方案,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • MYSQL使用正则表达式过滤数据

    MYSQL使用正则表达式过滤数据

    这篇文章主要介绍了MYSQL使用正则表达式过滤数据的相关资料,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • Linux中更改转移mysql数据库目录的步骤

    Linux中更改转移mysql数据库目录的步骤

    前几天发现由于MySQL的数据库太大,默认安装的/var盘已经再也无法容纳新增加的数据,只能想办法转移数据的目录。网上有很多相关的文章写到转移数据库目录的文章,但转载的过程中还会有一些错误,因为大部分人根本就没测试过,这篇文章是本文测试过整理好后分享给大家。
    2016-11-11

最新评论