我正在尝试使用带有mysql的grafana。 MySql从wordpres获取数据。我可以使用grafana连接到MySql数据库,但任何查询数据库的尝试都会导致下面引用的权限错误。有谁知道我做错了什么?我在创建此帐户时确保FLUSH PRIVILEGES;
。
什么帐户正在使用?
mysql> SELECT USER(),CURRENT_USER();
+-------------------+-------------------+
| USER() | CURRENT_USER() |
+-------------------+-------------------+
| grafana@localhost | grafana@localhost |
+-------------------+-------------------+
1 row in set (0.00 sec)
该帐户有哪些权限?
mysql> show grants for 'grafana'@'localhost';
+------------------------------------------------------------------------+
| Grants for grafana@localhost |
+------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'grafana'@'localhost' WITH GRANT OPTION |
+------------------------------------------------------------------------+
1 row in set (0.00 sec)
我可以从桌子上选择吗? (是)
mysql> select * from wp_users;
+----+---------------+------------------------------------+---------------+---------------------------+----------+---------------------+-----------------------------------------------+-------------+---------------+
| ID | user_login | user_pass | user_nicename | user_email | user_url | user_registered | user_activation_key | user_status | display_name |
+----+---------------+------------------------------------+---------------+---------------------------+----------+---------------------+-----------------------------------------------+-------------+---------------+
| 1 | admin | ********************************** | admin | [email protected] | | 2019-02-22 18:09:58 | | 0 | something |
+----+---------------+------------------------------------+---------------+---------------------------+----------+---------------------+-----------------------------------------------+-------------+---------------+
1 row in set (0.00 sec)
我的mysql信息是什么?
mysql> status
--------------
mysql Ver 14.14 Distrib 5.7.25, for Linux (x86_64) using EditLine wrapper
Connection id: 42787
Current database: information_schema
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.7.25-0ubuntu0.18.04.2 (Ubuntu)
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: latin1
Db characterset: utf8
Client characterset: latin1
Conn. characterset: latin1
UNIX socket: /var/run/mysqld/mysqld.sock
Uptime: 43 days 2 hours 29 min 53 sec
Threads: 3 Questions: 3576291 Slow queries: 0 Opens: 1570 Flush tables: 1 Open tables: 692 Queries per second avg: 0.960
--------------
尝试在grafana中运行什么查询?
SELECT
user_registered,
user_login
FROM wp_users
我试着有和没有尾随;
- 没有变化。
grafana用这个查询回馈给我什么?
Error 1142: SELECT command denied to user 'grafana'@'localhost' for table 'wp_users'
我意识到这个帐户有太多的权限,但看到grafana认为它没有足够的,现在我试图让它与至少超过它需要的工作。
在被这几小时难倒之后,向我建议了查看日志的概念。由于默认情况下MySql没有启用日志,因此我更改了设置以启用日志并重新启动MySql。这样做之后一切正常。我似乎只需要重新启动服务。
解决方案:
sudo service mysql restart