1source include/not_embedded.inc; 2 3create user test_user@localhost; 4create role test_role1; 5create role test_role2; 6 7grant test_role1 to test_user@localhost; 8grant test_role2 to test_role1; 9--sorted_result 10select user, host from mysql.user where user not like 'root'; 11--sorted_result 12select * from mysql.roles_mapping; 13 14grant select (Role) on mysql.roles_mapping to test_role2; 15 16change_user 'test_user'; 17 18--error ER_TABLEACCESS_DENIED_ERROR 19select * from mysql.roles_mapping; 20 21--sorted_result 22show grants; 23 24select current_user(), current_role(); 25set role test_role1; 26select current_user(), current_role(); 27 28--sorted_result 29show grants; 30 31--error ER_COLUMNACCESS_DENIED_ERROR 32select * from mysql.roles_mapping; 33 34--sorted_result 35select Role from mysql.roles_mapping; 36 37--sorted_result 38show grants; 39 40use mysql; 41 42set role none; 43select current_user(), current_role(); 44 45--sorted_result 46--error ER_TABLEACCESS_DENIED_ERROR 47select Role from mysql.roles_mapping; 48 49change_user 'root'; 50drop user 'test_user'@'localhost'; 51select * from mysql.tables_priv; 52revoke select on mysql.roles_mapping from test_role2; 53delete from mysql.user where user like'test_%'; 54delete from mysql.roles_mapping where Role like 'test%'; 55 56flush privileges; 57