1

我假设它在数据库文件夹中。但是在哪里......它可能在哪里?


问题通过运行解决FLUSH PRIVILEGES。我复制了该mysql文件夹,但没有重新启动服务器。

4

2 回答 2

1

它们通常存储在“mysql”数据库中。

http://dev.mysql.com/doc/refman/5.5/en//grant-table-structure.html所示,该表称为“db”

mysql> use mysql;
mysql> show tables;

+---------------------------+
| Tables_in_mysql           |
+---------------------------+
| columns_priv              |
| db                        |
| event                     |
| func                      |
| general_log               |
| help_category             |
| help_keyword              |
| help_relation             |
| help_topic                |
| host                      |
| ndb_binlog_index          |
| plugin                    |
| proc                      |
| procs_priv                |
| proxies_priv              |
| servers                   |
| slow_log                  |
| tables_priv               |
| time_zone                 |
| time_zone_leap_second     |
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| user                      |
+---------------------------+    

授予对特定数据库的访问权限,请使用:

GRANT SELECT ON database.* TO user@'localhost';
GRANT SELECT ON database.* TO user@'localhost' IDENTIFIED BY 'password';
于 2012-11-20T01:35:44.733 回答
0

运行SHOW GRANTS(或其更具体的变体,如SHOW GRANTS FOR 'user'@'host'or SHOW GRANTS FOR CURRENT_USER)以获取特权信息。

mysql如果您希望将结果作为 SQL 结果集获取,您还可以从数据库中获取信息,如 julumme 的答案所示。

于 2012-11-20T01:37:27.490 回答