mariadb/mysql-test/suite/perfschema/r/privilege.result
Michael Widenius aa81e025a8 Added text for errno in error messages by:
- Adding %M my_sprintf() modifier that prints error number - system-error-text
- Modified mysys, mysql_client and SQL error messages to use %M instead of %d
- Added my_strerror()
Updated handler errors to 5.6 error numbers
Updated text for a few error messages (to match 5.6)
Increased length of command name in error output

extra/comp_err.c:
  Added support for %M
include/my_base.h:
  Updated handler errors to 5.6 error numbers
include/my_sys.h:
  Added my_strerror()
libmysql/errmsg.c:
  Updated error messages to use %M
mysql-test/r/errors.result:
  Updated result as error message have changed
mysql-test/r/innodb_mysql_sync.result:
  Updated result with text for errno
mysql-test/r/myisam-system.result:
  Updated result with text for errno
mysql-test/r/myisam.result:
  Updated result as error message have changed
mysql-test/r/myisampack.result:
  Updated result with text for errno
mysql-test/r/mysql.result:
  Updated result with text for errno
mysql-test/r/mysql_upgrade.result:
  Updated result with text for errno
mysql-test/r/partition_datatype.result:
  Updated result as error message have changed
mysql-test/r/partition_innodb_plugin.result:
  Updated result with text for errno
mysql-test/r/ps_1general.result:
  Updated result with text for errno
mysql-test/r/trigger.result:
  Updated result with text for errno
mysql-test/r/type_bit.result:
  Updated result as error message have changed
mysql-test/r/type_bit_innodb.result:
  Updated result as error message have changed
mysql-test/r/type_blob.result:
  Updated result as error message have changed
mysql-test/suite/archive/archive.result:
  Updated result with text for errno
mysql-test/suite/binlog/r/binlog_index.result:
  Updated result with text for errno
mysql-test/suite/binlog/r/binlog_ioerr.result:
  Updated result with text for errno
mysql-test/suite/csv/csv.result:
  Updated result with text for errno
mysql-test/suite/federated/federated_bug_35333.result:
  Updated result with text for errno
mysql-test/suite/innodb/r/innodb-create-options.result:
  Updated result with text for errno
mysql-test/suite/innodb/r/innodb-index.result:
  Updated result with text for errno
mysql-test/suite/innodb/r/innodb-zip.result:
  Updated result as error message have changed
mysql-test/suite/innodb/r/innodb.result:
  Updated result with text for errno
mysql-test/suite/innodb/r/innodb_bug21704.result:
  Updated result with text for errno
mysql-test/suite/innodb/r/innodb_bug46000.result:
  Updated result with text for errno
mysql-test/suite/innodb/r/innodb_bug53591.result:
  Updated result as error message have changed
mysql-test/suite/innodb/r/innodb_corrupt_bit.result:
  New error numbers
mysql-test/suite/innodb/r/innodb_prefix_index_liftedlimit.result:
  Updated result as error message have changed
mysql-test/suite/innodb/t/innodb-create-options.test:
  Added regexp to avoid system error text
mysql-test/suite/innodb/t/innodb-zip.test:
  Added regexp to avoid system error text
mysql-test/suite/maria/maria-recovery2.result:
  Updated supression rule
mysql-test/suite/maria/maria-recovery2.test:
  Updated supression rule
mysql-test/suite/maria/maria.result:
  Updated result as error message have changed
mysql-test/suite/parts/r/partition_bit_innodb.result:
  
  Updated result as error message have changed
mysql-test/suite/parts/r/partition_bit_myisam.result:
  
  Updated result as error message have changed
mysql-test/suite/percona/percona_innodb_fake_changes.result:
  Updated result with text for errno
mysql-test/suite/perfschema/r/dml_cond_instances.result:
  Updated result as error message have changed
mysql-test/suite/perfschema/r/dml_events_waits_current.result:
  Updated result as error message have changed
mysql-test/suite/perfschema/r/dml_events_waits_history.result:
  Updated result as error message have changed
mysql-test/suite/perfschema/r/dml_events_waits_history_long.result:
  Updated result as error message have changed
mysql-test/suite/perfschema/r/dml_ews_by_instance.result:
  Updated result as error message have changed
mysql-test/suite/perfschema/r/dml_ews_by_thread_by_event_name.result:
  Updated result as error message have changed
mysql-test/suite/perfschema/r/dml_ews_global_by_event_name.result:
  Updated result as error message have changed
mysql-test/suite/perfschema/r/dml_file_instances.result:
  Updated result as error message have changed
mysql-test/suite/perfschema/r/dml_file_summary_by_event_name.result:
  Updated result as error message have changed
mysql-test/suite/perfschema/r/dml_file_summary_by_instance.result:
  Updated result as error message have changed
mysql-test/suite/perfschema/r/dml_mutex_instances.result:
  Updated result as error message have changed
mysql-test/suite/perfschema/r/dml_performance_timers.result:
  Updated result as error message have changed
mysql-test/suite/perfschema/r/dml_rwlock_instances.result:
  Updated result as error message have changed
mysql-test/suite/perfschema/r/dml_threads.result:
  Updated result as error message have changed
mysql-test/suite/perfschema/r/misc.result:
  Updated result with text for errno
mysql-test/suite/perfschema/r/privilege.result:
  Updated result with text for errno
mysql-test/suite/rpl/r/rpl_EE_err.result:
  Updated result with text for errno
mysql-test/suite/rpl/r/rpl_binlog_errors.result:
  Updated result with text for errno
mysql-test/suite/rpl/r/rpl_drop_db.result:
  Updated result with text for errno
mysys/errors.c:
  Updated error messages to use %M
  Changed all errors to use Errcode: consistenly
mysys/my_handler_errors.h:
  Updated handler errors to 5.6 error numbers
sql/share/errmsg-utf8.txt:
  Updated error messages to use %M
sql/sys_vars.cc:
  Added error number to ER_EVENT_SET_VAR_ERROR
strings/my_vsnprintf.c:
  Added %M my_sprintf() modifier that prints error number - system-error-text
  Simplify code
  Movied common code to function
  Removed some casts that was not necessary when reading integer/unsigned int stored in longlong
  Added my_strerror()
unittest/mysys/my_vsnprintf-t.c:
  Added testing of %M
2012-05-30 00:37:55 +03:00

578 lines
35 KiB
Text

show grants;
Grants for root@localhost
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION
GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION
grant ALL on *.* to 'pfs_user_1'@localhost with GRANT OPTION;
grant ALL on performance_schema.* to 'pfs_user_2'@localhost
with GRANT OPTION;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant CREATE on performance_schema.* to 'pfs_user_2'@localhost;
grant DROP on performance_schema.* to 'pfs_user_2'@localhost;
grant REFERENCES on performance_schema.* to 'pfs_user_2'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant INDEX on performance_schema.* to 'pfs_user_2'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant ALTER on performance_schema.* to 'pfs_user_2'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant CREATE TEMPORARY TABLES on performance_schema.* to 'pfs_user_2'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant EXECUTE on performance_schema.* to 'pfs_user_2'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant CREATE VIEW on performance_schema.* to 'pfs_user_2'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant SHOW VIEW on performance_schema.* to 'pfs_user_2'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant CREATE ROUTINE on performance_schema.* to 'pfs_user_2'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant ALTER ROUTINE on performance_schema.* to 'pfs_user_2'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant EVENT on performance_schema.* to 'pfs_user_2'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant TRIGGER on performance_schema.* to 'pfs_user_2'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant SELECT on performance_schema.* to 'pfs_user_2'@localhost;
grant INSERT on performance_schema.* to 'pfs_user_2'@localhost;
grant UPDATE on performance_schema.* to 'pfs_user_2'@localhost;
grant DELETE on performance_schema.* to 'pfs_user_2'@localhost;
grant LOCK TABLES on performance_schema.* to 'pfs_user_2'@localhost;
grant ALL on performance_schema.setup_instruments to 'pfs_user_3'@localhost
with GRANT OPTION;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant CREATE on performance_schema.setup_instruments to 'pfs_user_3'@localhost;
grant DROP on performance_schema.setup_instruments to 'pfs_user_3'@localhost;
grant REFERENCES on performance_schema.setup_instruments to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant INDEX on performance_schema.setup_instruments to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant ALTER on performance_schema.setup_instruments to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant CREATE VIEW on performance_schema.setup_instruments to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant SHOW VIEW on performance_schema.setup_instruments to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant TRIGGER on performance_schema.setup_instruments to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant INSERT on performance_schema.setup_instruments to 'pfs_user_3'@localhost;
ERROR 42000: INSERT,GRANT command denied to user 'root'@'localhost' for table 'setup_instruments'
grant DELETE on performance_schema.setup_instruments to 'pfs_user_3'@localhost;
ERROR 42000: DELETE,GRANT command denied to user 'root'@'localhost' for table 'setup_instruments'
grant SELECT on performance_schema.setup_instruments to 'pfs_user_3'@localhost
with GRANT OPTION;
grant UPDATE on performance_schema.setup_instruments to 'pfs_user_3'@localhost
with GRANT OPTION;
grant ALL on performance_schema.events_waits_current to 'pfs_user_3'@localhost
with GRANT OPTION;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant CREATE on performance_schema.events_waits_current to 'pfs_user_3'@localhost;
grant DROP on performance_schema.events_waits_current to 'pfs_user_3'@localhost;
grant REFERENCES on performance_schema.events_waits_current to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant INDEX on performance_schema.events_waits_current to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant ALTER on performance_schema.events_waits_current to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant CREATE VIEW on performance_schema.events_waits_current to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant SHOW VIEW on performance_schema.events_waits_current to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant TRIGGER on performance_schema.events_waits_current to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant INSERT on performance_schema.events_waits_current to 'pfs_user_3'@localhost;
ERROR 42000: INSERT,GRANT command denied to user 'root'@'localhost' for table 'events_waits_current'
grant UPDATE on performance_schema.events_waits_current to 'pfs_user_3'@localhost;
ERROR 42000: UPDATE,GRANT command denied to user 'root'@'localhost' for table 'events_waits_current'
grant DELETE on performance_schema.events_waits_current to 'pfs_user_3'@localhost;
ERROR 42000: DELETE,GRANT command denied to user 'root'@'localhost' for table 'events_waits_current'
grant SELECT on performance_schema.events_waits_current to 'pfs_user_3'@localhost
with GRANT OPTION;
grant ALL on performance_schema.file_instances to 'pfs_user_3'@localhost
with GRANT OPTION;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant CREATE on performance_schema.file_instances to 'pfs_user_3'@localhost;
grant DROP on performance_schema.file_instances to 'pfs_user_3'@localhost;
grant REFERENCES on performance_schema.file_instances to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant INDEX on performance_schema.file_instances to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant ALTER on performance_schema.file_instances to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant CREATE VIEW on performance_schema.file_instances to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant SHOW VIEW on performance_schema.file_instances to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant TRIGGER on performance_schema.file_instances to 'pfs_user_3'@localhost;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
grant INSERT on performance_schema.file_instances to 'pfs_user_3'@localhost;
ERROR 42000: INSERT,GRANT command denied to user 'root'@'localhost' for table 'file_instances'
grant UPDATE on performance_schema.file_instances to 'pfs_user_3'@localhost;
ERROR 42000: UPDATE,GRANT command denied to user 'root'@'localhost' for table 'file_instances'
grant DELETE on performance_schema.file_instances to 'pfs_user_3'@localhost;
ERROR 42000: DELETE,GRANT command denied to user 'root'@'localhost' for table 'file_instances'
grant SELECT on performance_schema.file_instances to 'pfs_user_3'@localhost
with GRANT OPTION;
grant LOCK TABLES on performance_schema.* to 'pfs_user_3'@localhost
with GRANT OPTION;
flush privileges;
drop table if exists test.t1;
rename table performance_schema.setup_instruments to test.t1;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
rename table performance_schema.events_waits_current to test.t1;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
rename table performance_schema.file_instances to test.t1;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
rename table performance_schema.setup_instruments to performance_schema.t1;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
rename table performance_schema.events_waits_current to performance_schema.t1;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
rename table performance_schema.file_instances to performance_schema.t1;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
rename table performance_schema.setup_instruments
to performance_schema.events_waits_current;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
rename table performance_schema.events_waits_current
to performance_schema.setup_instruments;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
create procedure performance_schema.my_proc() begin end;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
create function performance_schema.my_func() returns int return 0;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
create event performance_schema.my_event on schedule every 15 minute
do begin end;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
create trigger performance_schema.bi_setup_instruments
before insert on performance_schema.setup_instruments
for each row begin end;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
create trigger performance_schema.bi_events_waits_current
before insert on performance_schema.events_waits_current
for each row begin end;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
create trigger performance_schema.bi_file_instances
before insert on performance_schema.file_instances
for each row begin end;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'performance_schema'
create table test.t1(a int) engine=PERFORMANCE_SCHEMA;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
create table test.t1 like performance_schema.setup_instruments;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
create table test.t1 like performance_schema.events_waits_current;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
create table test.t1 like performance_schema.file_instances;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
insert into performance_schema.setup_instruments
set name="foo";
ERROR 42000: INSERT command denied to user 'root'@'localhost' for table 'setup_instruments'
insert into performance_schema.events_waits_current
set name="foo";
ERROR 42000: INSERT command denied to user 'root'@'localhost' for table 'events_waits_current'
insert into performance_schema.file_instances
set name="foo";
ERROR 42000: INSERT command denied to user 'root'@'localhost' for table 'file_instances'
delete from performance_schema.setup_instruments;
ERROR 42000: DELETE command denied to user 'root'@'localhost' for table 'setup_instruments'
delete from performance_schema.events_waits_current;
ERROR 42000: DELETE command denied to user 'root'@'localhost' for table 'events_waits_current'
delete from performance_schema.file_instances;
ERROR 42000: DELETE command denied to user 'root'@'localhost' for table 'file_instances'
lock table performance_schema.setup_instruments read;
unlock tables;
lock table performance_schema.setup_instruments write;
unlock tables;
lock table performance_schema.events_waits_current read;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'root'@'localhost' for table 'events_waits_current'
unlock tables;
lock table performance_schema.events_waits_current write;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'root'@'localhost' for table 'events_waits_current'
unlock tables;
lock table performance_schema.file_instances read;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'root'@'localhost' for table 'file_instances'
unlock tables;
lock table performance_schema.file_instances write;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'root'@'localhost' for table 'file_instances'
unlock tables;
#
# WL#4818, NFS2: Can use grants to give normal user access
# to view data from _current and _history tables
#
# Should work as pfs_user_1 and pfs_user_2, but not as pfs_user_3.
# (Except for events_waits_current, which is granted.)
SELECT "can select" FROM performance_schema.events_waits_history LIMIT 1;
can select
can select
SELECT "can select" FROM performance_schema.events_waits_history_long LIMIT 1;
can select
can select
SELECT "can select" FROM performance_schema.events_waits_current LIMIT 1;
can select
can select
SELECT "can select" FROM performance_schema.events_waits_summary_by_instance LIMIT 1;
can select
can select
SELECT "can select" FROM performance_schema.file_summary_by_instance LIMIT 1;
can select
can select
drop table if exists test.t1;
rename table performance_schema.setup_instruments to test.t1;
ERROR 42000: Access denied for user 'pfs_user_1'@'localhost' to database 'performance_schema'
rename table performance_schema.events_waits_current to test.t1;
ERROR 42000: Access denied for user 'pfs_user_1'@'localhost' to database 'performance_schema'
rename table performance_schema.file_instances to test.t1;
ERROR 42000: Access denied for user 'pfs_user_1'@'localhost' to database 'performance_schema'
rename table performance_schema.setup_instruments to performance_schema.t1;
ERROR 42000: Access denied for user 'pfs_user_1'@'localhost' to database 'performance_schema'
rename table performance_schema.events_waits_current to performance_schema.t1;
ERROR 42000: Access denied for user 'pfs_user_1'@'localhost' to database 'performance_schema'
rename table performance_schema.file_instances to performance_schema.t1;
ERROR 42000: Access denied for user 'pfs_user_1'@'localhost' to database 'performance_schema'
rename table performance_schema.setup_instruments
to performance_schema.events_waits_current;
ERROR 42000: Access denied for user 'pfs_user_1'@'localhost' to database 'performance_schema'
rename table performance_schema.events_waits_current
to performance_schema.setup_instruments;
ERROR 42000: Access denied for user 'pfs_user_1'@'localhost' to database 'performance_schema'
create procedure performance_schema.my_proc() begin end;
ERROR 42000: Access denied for user 'pfs_user_1'@'localhost' to database 'performance_schema'
create function performance_schema.my_func() returns int return 0;
ERROR 42000: Access denied for user 'pfs_user_1'@'localhost' to database 'performance_schema'
create event performance_schema.my_event on schedule every 15 minute
do begin end;
ERROR 42000: Access denied for user 'pfs_user_1'@'localhost' to database 'performance_schema'
create trigger performance_schema.bi_setup_instruments
before insert on performance_schema.setup_instruments
for each row begin end;
ERROR 42000: Access denied for user 'pfs_user_1'@'localhost' to database 'performance_schema'
create trigger performance_schema.bi_events_waits_current
before insert on performance_schema.events_waits_current
for each row begin end;
ERROR 42000: Access denied for user 'pfs_user_1'@'localhost' to database 'performance_schema'
create trigger performance_schema.bi_file_instances
before insert on performance_schema.file_instances
for each row begin end;
ERROR 42000: Access denied for user 'pfs_user_1'@'localhost' to database 'performance_schema'
create table test.t1(a int) engine=PERFORMANCE_SCHEMA;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
create table test.t1 like performance_schema.setup_instruments;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
create table test.t1 like performance_schema.events_waits_current;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
create table test.t1 like performance_schema.file_instances;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
insert into performance_schema.setup_instruments
set name="foo";
ERROR 42000: INSERT command denied to user 'pfs_user_1'@'localhost' for table 'setup_instruments'
insert into performance_schema.events_waits_current
set name="foo";
ERROR 42000: INSERT command denied to user 'pfs_user_1'@'localhost' for table 'events_waits_current'
insert into performance_schema.file_instances
set name="foo";
ERROR 42000: INSERT command denied to user 'pfs_user_1'@'localhost' for table 'file_instances'
delete from performance_schema.setup_instruments;
ERROR 42000: DELETE command denied to user 'pfs_user_1'@'localhost' for table 'setup_instruments'
delete from performance_schema.events_waits_current;
ERROR 42000: DELETE command denied to user 'pfs_user_1'@'localhost' for table 'events_waits_current'
delete from performance_schema.file_instances;
ERROR 42000: DELETE command denied to user 'pfs_user_1'@'localhost' for table 'file_instances'
lock table performance_schema.setup_instruments read;
unlock tables;
lock table performance_schema.setup_instruments write;
unlock tables;
lock table performance_schema.events_waits_current read;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'pfs_user_1'@'localhost' for table 'events_waits_current'
unlock tables;
lock table performance_schema.events_waits_current write;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'pfs_user_1'@'localhost' for table 'events_waits_current'
unlock tables;
lock table performance_schema.file_instances read;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'pfs_user_1'@'localhost' for table 'file_instances'
unlock tables;
lock table performance_schema.file_instances write;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'pfs_user_1'@'localhost' for table 'file_instances'
unlock tables;
#
# WL#4818, NFS2: Can use grants to give normal user access
# to view data from _current and _history tables
#
# Should work as pfs_user_1 and pfs_user_2, but not as pfs_user_3.
# (Except for events_waits_current, which is granted.)
SELECT "can select" FROM performance_schema.events_waits_history LIMIT 1;
can select
can select
SELECT "can select" FROM performance_schema.events_waits_history_long LIMIT 1;
can select
can select
SELECT "can select" FROM performance_schema.events_waits_current LIMIT 1;
can select
can select
SELECT "can select" FROM performance_schema.events_waits_summary_by_instance LIMIT 1;
can select
can select
SELECT "can select" FROM performance_schema.file_summary_by_instance LIMIT 1;
can select
can select
drop table if exists test.t1;
rename table performance_schema.setup_instruments to test.t1;
ERROR 42000: Access denied for user 'pfs_user_2'@'localhost' to database 'performance_schema'
rename table performance_schema.events_waits_current to test.t1;
ERROR 42000: Access denied for user 'pfs_user_2'@'localhost' to database 'performance_schema'
rename table performance_schema.file_instances to test.t1;
ERROR 42000: Access denied for user 'pfs_user_2'@'localhost' to database 'performance_schema'
rename table performance_schema.setup_instruments to performance_schema.t1;
ERROR 42000: Access denied for user 'pfs_user_2'@'localhost' to database 'performance_schema'
rename table performance_schema.events_waits_current to performance_schema.t1;
ERROR 42000: Access denied for user 'pfs_user_2'@'localhost' to database 'performance_schema'
rename table performance_schema.file_instances to performance_schema.t1;
ERROR 42000: Access denied for user 'pfs_user_2'@'localhost' to database 'performance_schema'
rename table performance_schema.setup_instruments
to performance_schema.events_waits_current;
ERROR 42000: Access denied for user 'pfs_user_2'@'localhost' to database 'performance_schema'
rename table performance_schema.events_waits_current
to performance_schema.setup_instruments;
ERROR 42000: Access denied for user 'pfs_user_2'@'localhost' to database 'performance_schema'
create procedure performance_schema.my_proc() begin end;
ERROR 42000: Access denied for user 'pfs_user_2'@'localhost' to database 'performance_schema'
create function performance_schema.my_func() returns int return 0;
ERROR 42000: Access denied for user 'pfs_user_2'@'localhost' to database 'performance_schema'
create event performance_schema.my_event on schedule every 15 minute
do begin end;
ERROR 42000: Access denied for user 'pfs_user_2'@'localhost' to database 'performance_schema'
create trigger performance_schema.bi_setup_instruments
before insert on performance_schema.setup_instruments
for each row begin end;
ERROR 42000: Access denied for user 'pfs_user_2'@'localhost' to database 'performance_schema'
create trigger performance_schema.bi_events_waits_current
before insert on performance_schema.events_waits_current
for each row begin end;
ERROR 42000: Access denied for user 'pfs_user_2'@'localhost' to database 'performance_schema'
create trigger performance_schema.bi_file_instances
before insert on performance_schema.file_instances
for each row begin end;
ERROR 42000: Access denied for user 'pfs_user_2'@'localhost' to database 'performance_schema'
create table test.t1(a int) engine=PERFORMANCE_SCHEMA;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
create table test.t1 like performance_schema.setup_instruments;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
create table test.t1 like performance_schema.events_waits_current;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
create table test.t1 like performance_schema.file_instances;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
insert into performance_schema.setup_instruments
set name="foo";
ERROR 42000: INSERT command denied to user 'pfs_user_2'@'localhost' for table 'setup_instruments'
insert into performance_schema.events_waits_current
set name="foo";
ERROR 42000: INSERT command denied to user 'pfs_user_2'@'localhost' for table 'events_waits_current'
insert into performance_schema.file_instances
set name="foo";
ERROR 42000: INSERT command denied to user 'pfs_user_2'@'localhost' for table 'file_instances'
delete from performance_schema.setup_instruments;
ERROR 42000: DELETE command denied to user 'pfs_user_2'@'localhost' for table 'setup_instruments'
delete from performance_schema.events_waits_current;
ERROR 42000: DELETE command denied to user 'pfs_user_2'@'localhost' for table 'events_waits_current'
delete from performance_schema.file_instances;
ERROR 42000: DELETE command denied to user 'pfs_user_2'@'localhost' for table 'file_instances'
lock table performance_schema.setup_instruments read;
unlock tables;
lock table performance_schema.setup_instruments write;
unlock tables;
lock table performance_schema.events_waits_current read;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'pfs_user_2'@'localhost' for table 'events_waits_current'
unlock tables;
lock table performance_schema.events_waits_current write;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'pfs_user_2'@'localhost' for table 'events_waits_current'
unlock tables;
lock table performance_schema.file_instances read;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'pfs_user_2'@'localhost' for table 'file_instances'
unlock tables;
lock table performance_schema.file_instances write;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'pfs_user_2'@'localhost' for table 'file_instances'
unlock tables;
#
# WL#4818, NFS2: Can use grants to give normal user access
# to view data from _current and _history tables
#
# Should work as pfs_user_1 and pfs_user_2, but not as pfs_user_3.
# (Except for events_waits_current, which is granted.)
SELECT "can select" FROM performance_schema.events_waits_history LIMIT 1;
can select
can select
SELECT "can select" FROM performance_schema.events_waits_history_long LIMIT 1;
can select
can select
SELECT "can select" FROM performance_schema.events_waits_current LIMIT 1;
can select
can select
SELECT "can select" FROM performance_schema.events_waits_summary_by_instance LIMIT 1;
can select
can select
SELECT "can select" FROM performance_schema.file_summary_by_instance LIMIT 1;
can select
can select
drop table if exists test.t1;
rename table performance_schema.setup_instruments to test.t1;
ERROR 42000: Access denied for user 'pfs_user_3'@'localhost' to database 'performance_schema'
rename table performance_schema.events_waits_current to test.t1;
ERROR 42000: Access denied for user 'pfs_user_3'@'localhost' to database 'performance_schema'
rename table performance_schema.file_instances to test.t1;
ERROR 42000: Access denied for user 'pfs_user_3'@'localhost' to database 'performance_schema'
rename table performance_schema.setup_instruments to performance_schema.t1;
ERROR 42000: Access denied for user 'pfs_user_3'@'localhost' to database 'performance_schema'
rename table performance_schema.events_waits_current to performance_schema.t1;
ERROR 42000: Access denied for user 'pfs_user_3'@'localhost' to database 'performance_schema'
rename table performance_schema.file_instances to performance_schema.t1;
ERROR 42000: Access denied for user 'pfs_user_3'@'localhost' to database 'performance_schema'
rename table performance_schema.setup_instruments
to performance_schema.events_waits_current;
ERROR 42000: Access denied for user 'pfs_user_3'@'localhost' to database 'performance_schema'
rename table performance_schema.events_waits_current
to performance_schema.setup_instruments;
ERROR 42000: Access denied for user 'pfs_user_3'@'localhost' to database 'performance_schema'
create procedure performance_schema.my_proc() begin end;
ERROR 42000: Access denied for user 'pfs_user_3'@'localhost' to database 'performance_schema'
create function performance_schema.my_func() returns int return 0;
ERROR 42000: Access denied for user 'pfs_user_3'@'localhost' to database 'performance_schema'
create event performance_schema.my_event on schedule every 15 minute
do begin end;
ERROR 42000: Access denied for user 'pfs_user_3'@'localhost' to database 'performance_schema'
create trigger performance_schema.bi_setup_instruments
before insert on performance_schema.setup_instruments
for each row begin end;
ERROR 42000: Access denied for user 'pfs_user_3'@'localhost' to database 'performance_schema'
create trigger performance_schema.bi_events_waits_current
before insert on performance_schema.events_waits_current
for each row begin end;
ERROR 42000: Access denied for user 'pfs_user_3'@'localhost' to database 'performance_schema'
create trigger performance_schema.bi_file_instances
before insert on performance_schema.file_instances
for each row begin end;
ERROR 42000: Access denied for user 'pfs_user_3'@'localhost' to database 'performance_schema'
create table test.t1(a int) engine=PERFORMANCE_SCHEMA;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
create table test.t1 like performance_schema.setup_instruments;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
create table test.t1 like performance_schema.events_waits_current;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
create table test.t1 like performance_schema.file_instances;
ERROR HY000: Can't create table 'test.t1' (errno: 131 - Command not supported by database)
insert into performance_schema.setup_instruments
set name="foo";
ERROR 42000: INSERT command denied to user 'pfs_user_3'@'localhost' for table 'setup_instruments'
insert into performance_schema.events_waits_current
set name="foo";
ERROR 42000: INSERT command denied to user 'pfs_user_3'@'localhost' for table 'events_waits_current'
insert into performance_schema.file_instances
set name="foo";
ERROR 42000: INSERT command denied to user 'pfs_user_3'@'localhost' for table 'file_instances'
delete from performance_schema.setup_instruments;
ERROR 42000: DELETE command denied to user 'pfs_user_3'@'localhost' for table 'setup_instruments'
delete from performance_schema.events_waits_current;
ERROR 42000: DELETE command denied to user 'pfs_user_3'@'localhost' for table 'events_waits_current'
delete from performance_schema.file_instances;
ERROR 42000: DELETE command denied to user 'pfs_user_3'@'localhost' for table 'file_instances'
lock table performance_schema.setup_instruments read;
unlock tables;
lock table performance_schema.setup_instruments write;
unlock tables;
lock table performance_schema.events_waits_current read;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'pfs_user_3'@'localhost' for table 'events_waits_current'
unlock tables;
lock table performance_schema.events_waits_current write;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'pfs_user_3'@'localhost' for table 'events_waits_current'
unlock tables;
lock table performance_schema.file_instances read;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'pfs_user_3'@'localhost' for table 'file_instances'
unlock tables;
lock table performance_schema.file_instances write;
ERROR 42000: SELECT,LOCK TABLES command denied to user 'pfs_user_3'@'localhost' for table 'file_instances'
unlock tables;
#
# WL#4818, NFS2: Can use grants to give normal user access
# to view data from _current and _history tables
#
# Should work as pfs_user_1 and pfs_user_2, but not as pfs_user_3.
# (Except for events_waits_current, which is granted.)
SELECT "can select" FROM performance_schema.events_waits_history LIMIT 1;
ERROR 42000: SELECT command denied to user 'pfs_user_3'@'localhost' for table 'events_waits_history'
SELECT "can select" FROM performance_schema.events_waits_history_long LIMIT 1;
ERROR 42000: SELECT command denied to user 'pfs_user_3'@'localhost' for table 'events_waits_history_long'
SELECT "can select" FROM performance_schema.events_waits_current LIMIT 1;
can select
can select
SELECT "can select" FROM performance_schema.events_waits_summary_by_instance LIMIT 1;
ERROR 42000: SELECT command denied to user 'pfs_user_3'@'localhost' for table 'events_waits_summary_by_instance'
SELECT "can select" FROM performance_schema.file_summary_by_instance LIMIT 1;
ERROR 42000: SELECT command denied to user 'pfs_user_3'@'localhost' for table 'file_summary_by_instance'
revoke all privileges, grant option from 'pfs_user_1'@localhost;
revoke all privileges, grant option from 'pfs_user_2'@localhost;
revoke all privileges, grant option from 'pfs_user_3'@localhost;
drop user 'pfs_user_1'@localhost;
drop user 'pfs_user_2'@localhost;
drop user 'pfs_user_3'@localhost;
flush privileges;
# Test cases from WL#4818
# Setup user
CREATE user pfs_user_4;
#
# WL#4818, NFS4: Normal user does not have access to view data
# without grants
#
# Select as pfs_user_4 should fail without grant
SELECT event_id FROM performance_schema.events_waits_history;
ERROR 42000: SELECT command denied to user 'pfs_user_4'@'localhost' for table 'events_waits_history'
SELECT event_id FROM performance_schema.events_waits_history_long;
ERROR 42000: SELECT command denied to user 'pfs_user_4'@'localhost' for table 'events_waits_history_long'
SELECT event_id FROM performance_schema.events_waits_current;
ERROR 42000: SELECT command denied to user 'pfs_user_4'@'localhost' for table 'events_waits_current'
SELECT event_name FROM performance_schema.events_waits_summary_by_instance;
ERROR 42000: SELECT command denied to user 'pfs_user_4'@'localhost' for table 'events_waits_summary_by_instance'
SELECT event_name FROM performance_schema.file_summary_by_instance;
ERROR 42000: SELECT command denied to user 'pfs_user_4'@'localhost' for table 'file_summary_by_instance'
#
# WL#4818, NFS3: Normal user does not have access to change what is
# instrumented without grants
#
# User pfs_user_4 should not be allowed to tweak instrumentation without
# explicit grant
UPDATE performance_schema.setup_instruments SET enabled = 'NO', timed = 'YES';
ERROR 42000: UPDATE command denied to user 'pfs_user_4'@'localhost' for table 'setup_instruments'
UPDATE performance_schema.setup_instruments SET enabled = 'YES'
WHERE name LIKE 'wait/synch/mutex/%'
OR name LIKE 'wait/synch/rwlock/%';
ERROR 42000: UPDATE command denied to user 'pfs_user_4'@'localhost' for table 'setup_instruments'
UPDATE performance_schema.setup_consumers SET enabled = 'YES';
ERROR 42000: UPDATE command denied to user 'pfs_user_4'@'localhost' for table 'setup_consumers'
UPDATE performance_schema.setup_timers SET timer_name = 'TICK';
ERROR 42000: UPDATE command denied to user 'pfs_user_4'@'localhost' for table 'setup_timers'
TRUNCATE TABLE performance_schema.events_waits_history_long;
ERROR 42000: DROP command denied to user 'pfs_user_4'@'localhost' for table 'events_waits_history_long'
TRUNCATE TABLE performance_schema.events_waits_history;
ERROR 42000: DROP command denied to user 'pfs_user_4'@'localhost' for table 'events_waits_history'
TRUNCATE TABLE performance_schema.events_waits_current;
ERROR 42000: DROP command denied to user 'pfs_user_4'@'localhost' for table 'events_waits_current'
#
# WL#4814, NFS1: Can use grants to give normal user access
# to turn on and off instrumentation
#
# Grant access to change tables with the root account
GRANT UPDATE ON performance_schema.setup_consumers TO pfs_user_4;
GRANT UPDATE ON performance_schema.setup_timers TO pfs_user_4;
GRANT UPDATE, SELECT ON performance_schema.setup_instruments TO pfs_user_4;
GRANT DROP ON performance_schema.events_waits_current TO pfs_user_4;
GRANT DROP ON performance_schema.events_waits_history TO pfs_user_4;
GRANT DROP ON performance_schema.events_waits_history_long TO pfs_user_4;
# User pfs_user_4 should now be allowed to tweak instrumentation
UPDATE performance_schema.setup_instruments SET enabled = 'NO', timed = 'YES';
UPDATE performance_schema.setup_instruments SET enabled = 'YES'
WHERE name LIKE 'wait/synch/mutex/%'
OR name LIKE 'wait/synch/rwlock/%';
UPDATE performance_schema.setup_consumers SET enabled = 'YES';
UPDATE performance_schema.setup_timers SET timer_name = 'TICK';
TRUNCATE TABLE performance_schema.events_waits_history_long;
TRUNCATE TABLE performance_schema.events_waits_history;
TRUNCATE TABLE performance_schema.events_waits_current;
# Clean up
REVOKE ALL PRIVILEGES, GRANT OPTION FROM pfs_user_4;
DROP USER pfs_user_4;
flush privileges;
UPDATE performance_schema.setup_instruments SET enabled = 'YES', timed = 'YES';
UPDATE performance_schema.setup_consumers SET enabled = 'YES';
UPDATE performance_schema.setup_timers SET timer_name = 'CYCLE';