나는이 같은 5.0 데이터베이스에 정의 된 view :권한 오류 실행중인 MySQL을보기에 EXPLAIN
CREATE OR REPLACE ALGORITHM=MERGE
[email protected]'%' SQL SECURITY DEFINER
VIEW db2.data_view AS SELECT * FROM db1.data_table;
이 DB1이 하나의 테이블에 DB2 액세스를 사용자에게 제공하기 위해 수행하고, SELECT 쿼리 작동합니다 : 나는 시도하고 동일한 쿼리를 설명 할 때
[[email protected]]> select name from data_view limit 1;
+----------------+
| name |
+----------------+
| slartibartfast |
+----------------+
1 row in set (0.00 sec)
그러나, 내가 얻을 :
[[email protected]]> explain select name from data_view limit 1;
ERROR 1345 (HY000): EXPLAIN/SHOW can not be issued; lacking privileges for
underlying table
DB2 사용자에게 뷰에 대한 SHOW VIEW
특권을 부여했지만 EXPLAIN
에 대해 동일한 오류가 발생합니다.
GRANT SHOW VIEW ON `db2`.`data_view` TO 'db2_user'@'%';
뷰에 액세스 할 수있는 사용자가 EXPLAIN
을 실행하는 데 필요한 것은 무엇입니까?
응답 해 주셔서 감사합니다. 불행히도 문제가 해결되지 않습니다 - 나는 같은 오류가 나타납니다. – tcarobruce
mysql에서 질의를 "설명"하는 특별한 권한 옵션이 없기를 두려워합니다. 그렇다면 사용자에게 모든 옵션을 부여하더라도 오류가 발생합니까? – Payam