Для конкретной базы данных в MySQL Server 5.5 я хотел бы просмотреть все гранты, предоставленные любому пользователю. Для этого я читал из таблицы information_schema.schema_privileges
, используя оператор выбора следующим образом:
select * from information_schema.schema_privileges where table_schema='myproject';
Проблема в том, что я вижу только свои собственные гранты для базы данных. Поэтому я пытаюсь изменить свои гранты таким образом, чтобы гранты для всех пользователей этой базы данных были указаны в результатах выбора.
В документации говорится, что информация в таблице schema_privileges
взята из таблицы mysql.db
, однако также предоставление select
для mysql.db
, похоже, не имеет никакого значения. Я все еще вижу только свои собственные гранты для рассматриваемой базы данных.
У кого-нибудь есть идеи, какие гранты требуются?
Мои текущие гранты следующие:
show grants;<br>
Grants for myuser@localhost<br>
GRANT USAGE ON <em>.</em> TO 'myuser'@'localhost' IDENTIFIED BY PASSWORD 'XXX'<br>
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP ON <code>myproject
. * TO 'myuser' @ 'localhost' С ГРАНТОВЫМ ВАРИАНТОМ
GRANT SELECT ON mysql
. user
TO 'myuser' @ 'localhost'
GRANT SELECT ON mysql
. db
TO 'myuser' @ 'localhost'