CREATE USER mysqluser1@localhost; CREATE DATABASE mysqltest1; USE mysqltest1; CREATE TABLE t1 ( a INT ); CREATE VIEW v1 AS SELECT a FROM t1; GRANT SHOW VIEW ON v1 TO mysqluser1@localhost; --connect (connection1, localhost, mysqluser1, , mysqltest1) --error ER_TABLEACCESS_DENIED_ERROR SHOW CREATE VIEW v1; --connection default DROP USER mysqluser1@localhost; DROP DATABASE mysqltest1;