Introduce two methods to view MySQL user permissions 1. Use MySQL grants command mysql> show grants for username@localhost; +---------------------------------------------------------------------+ | Grants for root@localhost | +---------------------------------------------------------------------+ | GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION | +---------------------------------------------------------------------+ It should be noted that: ● The combination of username and ip must exist in the mysql.user table. You can check it by using the select * from mysql.user command. ● If the IP address is in wildcard format, it needs to be enclosed in quotation marks, for example: show grants for root@'172.%'; 2. Use MySQL select command mysql> select * from mysql.user where user='root' and host='localhost' \G; *************************** 1. row *************************** Host: localhost User: root Password: ********************** Select_priv: Y Insert_priv: Y Update_priv: Y Delete_priv: Y Create_priv: Y Drop_priv: Y Reload_priv: Y Shutdown_priv: Y Process_priv: Y File_priv: Y Grant_priv: Y References_priv: Y Index_priv: Y Alter_priv: Y Show_db_priv: Y Super_priv: Y Create_tmp_table_priv: Y Lock_tables_priv: Y Execute_priv: Y Repl_slave_priv: Y Repl_client_priv: Y Create_view_priv: Y Show_view_priv: Y Create_routine_priv: Y Alter_routine_priv: Y Create_user_priv: Y Event_priv: Y Trigger_priv: Y Create_tablespace_priv: Y ssl_type: ssl_cipher: x509_issuer: x509_subject: max_questions: 0 max_updates: 0 max_connections: 0 max_user_connections: 0 plugin:mysql_native_password authentication_string: password_expired: N 1 row in set (0.01 sec) Knowledge point expansion: Let's create a test account test and grant table-level permissions mysql> drop user test; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> grant all on MyDB.kkk to test@'%' identified by 'test'; Query OK, 0 rows affected (0.01 sec) mysql> mysql> show grants for test; +---------------------------------------------------------------------------------------------------------------------+ | Grants for test@% | +---------------------------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'test'@'%' IDENTIFIED BY PASSWORD '*94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29' | | GRANT ALL PRIVILEGES ON `MyDB`.`kkk` TO 'test'@'%' | +---------------------------------------------------------------------------------------------------------------------+ 2 rows in set (0.00 sec) mysql> select * from mysql.tables_priv\G; *************************** 1. row *************************** Host: % Db: MyDB User: test Table_name: kkk Grantor: root@localhost Timestamp: 0000-00-00 00:00:00 Table_priv: Select,Insert,Update,Delete,Create,Drop,References,Index,Alter,Create View,Show view,Trigger Column_priv: 1 row in set (0.01 sec) ERROR: No query specified mysql> <br> Let's create a test account test and grant column-level permissions mysql> drop user test; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> grant select (id, col1) on MyDB.TEST1 to test@'%' identified by 'test'; Query OK, 0 rows affected (0.01 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> mysql> select * from mysql.columns_priv; +------+------+------+------------+-------------+---------------------+-------------+ | Host | Db | User | Table_name | Column_name | Timestamp | Column_priv | +------+------+------+------------+-------------+---------------------+-------------+ | % | MyDB | test | TEST1 | id | 0000-00-00 00:00:00 | Select | | % | MyDB | test | TEST1 | col1 | 0000-00-00 00:00:00 | Select | +------+------+------+------------+-------------+---------------------+-------------+ 2 rows in set (0.00 sec) mysql> show grants for test; +---------------------------------------------------------------------------------------------------------------------+ | Grants for test@% | +---------------------------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'test'@'%' IDENTIFIED BY PASSWORD '*94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29' | | GRANT SELECT (id, col1) ON `MyDB`.`TEST1` TO 'test'@'%' | +---------------------------------------------------------------------------------------------------------------------+ 2 rows in set (0.00 sec) mysql> <br> This concludes this article on the summary of methods for querying MySQL user permissions. For more information about the two methods for querying MySQL user permissions, please search for previous articles on 123WORDPRESS.COM or continue to browse the following related articles. I hope you will support 123WORDPRESS.COM in the future! You may also be interested in:
|
<<: Implementation of Docker private warehouse registry deployment
>>: The order of event execution in the node event loop
For containers, the simplest health check is the ...
We have introduced how to create a waterfall layo...
Table of contents Class component event binding F...
The following attributes are not very compatible w...
Tag type (display mode) HTML tags are generally d...
Before talking about OO, design patterns, and the ...
Table of contents Preparation Install VMware Work...
Today is 618, and all major shopping malls are ho...
HTML reuse is a term that is rarely mentioned. Tod...
Table of contents Preface Setting up with Vue CLI...
Table of contents ReactRouterV6 Changes 1. <Sw...
Rendering Commonly used styles in Blog Garden /*T...
The effect of completing a menu bar through displ...
Table of contents About G2 Chart use Complete cod...
Sophie Hardach Clyde Quay Wharf 37 East Soapbox Rx...