本文给大家分享的是查看MySQL连接的root密码的方法,下面话不多说来来看正文:
1.首先我们进到MySQL的bin目录下
1
|
➜ cd /usr/local/mysql/bin
|
2.切换成root身份
1
|
➜ bin sudo su
|
3.跨过权限的验证
1
2
3
4
|
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
1
2
3
4
5
6
7
8
9
10
11
12
|
. /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数据库
1
2
3
4
5
|
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数据库下的表
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
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的表结构是怎么样的
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
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的密码了
1
2
3
4
5
6
7
|
mysql> select authentication_string from user where User= 'root' ;
+-------------------------------------------+
| authentication_string |
+-------------------------------------------+
| *781D25322166DB7FF99BA4A1FA5ED30439A60DDE |
+-------------------------------------------+
1 row in set (0.01 sec)
|
OK,那我们拿着这个密码到Navicat试试看
总结
好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。
原文链接:http://zeeyang.com/2017/01/04/Check-MySQL-Password/