1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

Post merge fixes after

ChangeSet@1.2561, 2008-03-07 17:44:03+01:00, mleich@five.local.lan +132 -0
  Merge five.local.lan:/work/merge/mysql-5.0-funcs_1
  into  five.local.lan:/work/merge/mysql-5.1-funcs_1
  MERGE: 1.1810.3473.24

ChangeSet@1.1810.3473.24, 2008-03-07
  WL#4203 Reorganize and fix the data dictionary tests of
          testsuite funcs_1

  1. Adjustment of expected results to modified server properties
  2. Add some tests of information_schema views
  3. Minor corrections and improvements


BitKeeper/deleted/.del-ndb__datadict.result:
  Delete: mysql-test/suite/funcs_1/r/ndb__datadict.result
BitKeeper/deleted/.del-ndb__datadict.test:
  Delete: mysql-test/suite/funcs_1/t/ndb__datadict.test
BitKeeper/deleted/.del-ndb__load.test:
  Delete: mysql-test/suite/funcs_1/t/ndb__load.test
BitKeeper/deleted/.del-ndb__load.result:
  Delete: mysql-test/suite/funcs_1/r/ndb__load.result
mysql-test/suite/funcs_1/r/memory_storedproc_07.result:
  Change mode to -rw-rw-r--
mysql-test/suite/funcs_1/r/memory_storedproc_02.result:
  Change mode to -rw-rw-r--
mysql-test/suite/funcs_1/r/memory_storedproc_03.result:
  Change mode to -rw-rw-r--
mysql-test/suite/funcs_1/r/memory_storedproc_08.result:
  Change mode to -rw-rw-r--
mysql-test/suite/funcs_1/r/memory_storedproc_10.result:
  Change mode to -rw-rw-r--
mysql-test/suite/funcs_1/r/innodb_storedproc_02.result:
  Change mode to -rw-rw-r--
mysql-test/suite/funcs_1/r/innodb_storedproc_03.result:
  Change mode to -rw-rw-r--
mysql-test/suite/funcs_1/r/innodb_storedproc_07.result:
  Change mode to -rw-rw-r--
mysql-test/suite/funcs_1/r/innodb_storedproc_08.result:
  Change mode to -rw-rw-r--
mysql-test/suite/funcs_1/r/innodb_storedproc_10.result:
  Change mode to -rw-rw-r--
mysql-test/suite/funcs_1/r/myisam_storedproc_02.result:
  Change mode to -rw-rw-r--
mysql-test/suite/funcs_1/r/myisam_storedproc_03.result:
  Change mode to -rw-rw-r--
mysql-test/suite/funcs_1/r/myisam_storedproc_07.result:
  Change mode to -rw-rw-r--
mysql-test/suite/funcs_1/r/myisam_storedproc_08.result:
  Change mode to -rw-rw-r--
mysql-test/suite/funcs_1/r/myisam_storedproc_10.result:
  Change mode to -rw-rw-r--
mysql-test/suite/funcs_1/datadict/processlist_priv.inc:
  Make the results independend of amount of preceding tests.
mysql-test/suite/funcs_1/datadict/processlist_val.inc:
  Correct the cleanup
mysql-test/suite/funcs_1/r/charset_collation_1.result:
  Updated results
mysql-test/suite/funcs_1/r/charset_collation_2.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_func_view.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_storedproc.result:
  Updated results
mysql-test/suite/funcs_1/r/is_basics_mixed.result:
  Updated results
mysql-test/suite/funcs_1/r/is_character_sets.result:
  Updated results
mysql-test/suite/funcs_1/r/is_collation_character_set_applicability.result:
  Updated results
mysql-test/suite/funcs_1/r/is_collations.result:
  Updated results
mysql-test/suite/funcs_1/r/is_column_privileges.result:
  Updated results
mysql-test/suite/funcs_1/r/is_columns.result:
  Updated results
mysql-test/suite/funcs_1/r/is_columns_innodb.result:
  Updated results
mysql-test/suite/funcs_1/r/is_columns_is.result:
  Updated results
mysql-test/suite/funcs_1/r/is_columns_memory.result:
  Updated results
mysql-test/suite/funcs_1/r/is_columns_myisam.result:
  Updated results
mysql-test/suite/funcs_1/r/is_columns_mysql.result:
  Updated results
mysql-test/suite/funcs_1/r/is_key_column_usage.result:
  Updated results
mysql-test/suite/funcs_1/r/is_routines.result:
  Updated results
mysql-test/suite/funcs_1/r/is_schema_privileges.result:
  Updated results
mysql-test/suite/funcs_1/r/is_schema_privileges_is_mysql_test.result:
  Updated results
mysql-test/suite/funcs_1/r/is_schemata.result:
  Updated results
mysql-test/suite/funcs_1/r/is_statistics.result:
  Updated results
mysql-test/suite/funcs_1/r/is_statistics_mysql.result:
  Updated results
mysql-test/suite/funcs_1/r/is_table_constraints.result:
  Updated results
mysql-test/suite/funcs_1/r/is_table_constraints_mysql.result:
  Updated results
mysql-test/suite/funcs_1/r/is_table_privileges.result:
  Updated results
mysql-test/suite/funcs_1/r/is_tables.result:
  Updated results
mysql-test/suite/funcs_1/r/is_tables_is.result:
  Updated results
mysql-test/suite/funcs_1/r/is_tables_mysql.result:
  Updated results
mysql-test/suite/funcs_1/r/is_tables_ndb.result:
  Updated results
mysql-test/suite/funcs_1/r/is_triggers.result:
  Updated results
mysql-test/suite/funcs_1/r/is_user_privileges.result:
  Updated results
mysql-test/suite/funcs_1/r/is_views.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_func_view.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_storedproc.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_func_view.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_storedproc.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_views.result:
  Updated results
mysql-test/suite/funcs_1/r/ndb_func_view.result:
  Updated results
mysql-test/suite/funcs_1/r/ndb_storedproc.result:
  Updated results
mysql-test/suite/funcs_1/r/ndb_storedproc_02.result:
  Updated results
mysql-test/suite/funcs_1/r/ndb_storedproc_03.result:
  Updated results
mysql-test/suite/funcs_1/r/ndb_storedproc_07.result:
  Updated results
mysql-test/suite/funcs_1/r/ndb_storedproc_08.result:
  Updated results
mysql-test/suite/funcs_1/r/ndb_storedproc_10.result:
  Updated results
mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result:
  Updated results
mysql-test/suite/funcs_1/r/processlist_priv_ps.result:
  Updated results
mysql-test/suite/funcs_1/r/processlist_val_no_prot.result:
  Updated results
mysql-test/suite/funcs_1/r/processlist_val_ps.result:
  Updated results
mysql-test/suite/funcs_1/storedproc/storedproc_master.inc:
  Set subtest checking a no more reserved keyword
  to comment.
mysql-test/suite/funcs_1/t/disabled.def:
  ndb__datadict is dropped. The checks are done in
  other scripts.
mysql-test/suite/funcs_1/t/is_routines.test:
  Correction of comment
mysql-test/suite/funcs_1/t/is_triggers.test:
  Adjustment to changes in privilege system between
  MySQL 5.0 and 5.1.
mysql-test/suite/funcs_1/t/is_views.test:
  Correction of comment.
mysql-test/suite/funcs_1/t/processlist_priv_no_prot.test:
  Correction of comment.
mysql-test/suite/funcs_1/t/processlist_priv_ps.test:
  Correction of comment.
mysql-test/suite/funcs_1/t/processlist_val_no_prot.test:
  Correction of comment.
mysql-test/suite/funcs_1/t/processlist_val_ps.test:
  Correction of comment.
mysql-test/suite/funcs_1/r/is_engines.result:
  Expected results
mysql-test/suite/funcs_1/r/is_engines_archive.result:
  Expected results
mysql-test/suite/funcs_1/r/is_engines_blackhole.result:
  Expected results
mysql-test/suite/funcs_1/r/is_engines_csv.result:
  Expected results
mysql-test/suite/funcs_1/r/is_engines_federated.result:
  Expected results
mysql-test/suite/funcs_1/r/is_engines_innodb.result:
  Expected results
mysql-test/suite/funcs_1/r/is_engines_memory.result:
  Expected results
mysql-test/suite/funcs_1/r/is_engines_merge.result:
  Expected results
mysql-test/suite/funcs_1/r/is_engines_myisam.result:
  Expected results
mysql-test/suite/funcs_1/t/is_engines.test:
  Test of information_schema.engines
mysql-test/suite/funcs_1/t/is_engines_archive.test:
  Test of information_schema.engines
      Variant for ARCHIVE
mysql-test/suite/funcs_1/t/is_engines_blackhole.test:
  Test of information_schema.engines
      Variant for BLACKHOLE
mysql-test/suite/funcs_1/t/is_engines_csv.test:
  Test of information_schema.engines
      Variant for CSV
mysql-test/suite/funcs_1/t/is_engines_federated.test:
  Test of information_schema.engines
      Variant for FEDERATED
mysql-test/suite/funcs_1/t/is_engines_innodb.test:
  Test of information_schema.engines
      Variant for InnoDB
mysql-test/suite/funcs_1/t/is_engines_memory.test:
  Test of information_schema.engines
      Variant for MEMORY
mysql-test/suite/funcs_1/t/is_engines_merge.test:
  Test of information_schema.engines
      Variant for MERGGE
mysql-test/suite/funcs_1/t/is_engines_myisam.test:
  Test of information_schema.engines
      Variant for MyISAM
mysql-test/suite/funcs_1/t/is_engines_ndb.test:
  Test of information_schema.engines
      Variant for NDB
mysql-test/suite/funcs_1/t/is_events.test:
  Test for information_schema.events
mysql-test/suite/funcs_1/r/is_engines_ndb.result:
  Expected results
mysql-test/suite/funcs_1/r/is_events.result:
  Expected results
This commit is contained in:
unknown
2008-03-07 20:18:14 +01:00
parent 71fb657743
commit 633cc34ca7
100 changed files with 2716 additions and 15776 deletions

View File

@ -47,28 +47,34 @@ ACTION_REFERENCE_NEW_ROW varchar(3) NO
CREATED datetime YES NULL
SQL_MODE longtext NO NULL
DEFINER longtext NO NULL
CHARACTER_SET_CLIENT varchar(32) NO
COLLATION_CONNECTION varchar(32) NO
DATABASE_COLLATION varchar(32) NO
SHOW CREATE TABLE information_schema.TRIGGERS;
Table Create Table
TRIGGERS CREATE TEMPORARY TABLE `TRIGGERS` (
`TRIGGER_CATALOG` varchar(512) default NULL,
`TRIGGER_SCHEMA` varchar(64) NOT NULL default '',
`TRIGGER_NAME` varchar(64) NOT NULL default '',
`EVENT_MANIPULATION` varchar(6) NOT NULL default '',
`EVENT_OBJECT_CATALOG` varchar(512) default NULL,
`EVENT_OBJECT_SCHEMA` varchar(64) NOT NULL default '',
`EVENT_OBJECT_TABLE` varchar(64) NOT NULL default '',
`ACTION_ORDER` bigint(4) NOT NULL default '0',
`TRIGGER_CATALOG` varchar(512) DEFAULT NULL,
`TRIGGER_SCHEMA` varchar(64) NOT NULL DEFAULT '',
`TRIGGER_NAME` varchar(64) NOT NULL DEFAULT '',
`EVENT_MANIPULATION` varchar(6) NOT NULL DEFAULT '',
`EVENT_OBJECT_CATALOG` varchar(512) DEFAULT NULL,
`EVENT_OBJECT_SCHEMA` varchar(64) NOT NULL DEFAULT '',
`EVENT_OBJECT_TABLE` varchar(64) NOT NULL DEFAULT '',
`ACTION_ORDER` bigint(4) NOT NULL DEFAULT '0',
`ACTION_CONDITION` longtext,
`ACTION_STATEMENT` longtext NOT NULL,
`ACTION_ORIENTATION` varchar(9) NOT NULL default '',
`ACTION_TIMING` varchar(6) NOT NULL default '',
`ACTION_REFERENCE_OLD_TABLE` varchar(64) default NULL,
`ACTION_REFERENCE_NEW_TABLE` varchar(64) default NULL,
`ACTION_REFERENCE_OLD_ROW` varchar(3) NOT NULL default '',
`ACTION_REFERENCE_NEW_ROW` varchar(3) NOT NULL default '',
`CREATED` datetime default NULL,
`ACTION_ORIENTATION` varchar(9) NOT NULL DEFAULT '',
`ACTION_TIMING` varchar(6) NOT NULL DEFAULT '',
`ACTION_REFERENCE_OLD_TABLE` varchar(64) DEFAULT NULL,
`ACTION_REFERENCE_NEW_TABLE` varchar(64) DEFAULT NULL,
`ACTION_REFERENCE_OLD_ROW` varchar(3) NOT NULL DEFAULT '',
`ACTION_REFERENCE_NEW_ROW` varchar(3) NOT NULL DEFAULT '',
`CREATED` datetime DEFAULT NULL,
`SQL_MODE` longtext NOT NULL,
`DEFINER` longtext NOT NULL
`DEFINER` longtext NOT NULL,
`CHARACTER_SET_CLIENT` varchar(32) NOT NULL DEFAULT '',
`COLLATION_CONNECTION` varchar(32) NOT NULL DEFAULT '',
`DATABASE_COLLATION` varchar(32) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8
SHOW COLUMNS FROM information_schema.TRIGGERS;
Field Type Null Key Default Extra
@ -91,11 +97,14 @@ ACTION_REFERENCE_NEW_ROW varchar(3) NO
CREATED datetime YES NULL
SQL_MODE longtext NO NULL
DEFINER longtext NO NULL
CHARACTER_SET_CLIENT varchar(32) NO
COLLATION_CONNECTION varchar(32) NO
DATABASE_COLLATION varchar(32) NO
SELECT * FROM information_schema.triggers
WHERE trigger_catalog IS NOT NULL OR event_object_catalog IS NOT NULL
OR action_condition IS NOT NULL OR action_reference_old_table IS NOT NULL
OR action_reference_new_table IS NOT NULL;
TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER
TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
##################################################################################
# Testcase 3.2.18.2 + 3.2.18.3: INFORMATION_SCHEMA.TRIGGERS accessible information
##################################################################################
@ -109,9 +118,9 @@ DROP USER 'testuser3'@'localhost';
CREATE USER 'testuser3'@'localhost';
DROP USER 'testuser4'@'localhost';
CREATE USER 'testuser4'@'localhost';
GRANT SUPER ON *.* TO 'testuser1'@'localhost';
GRANT SUPER ON *.* TO 'testuser3'@'localhost';
GRANT SUPER ON *.* TO 'testuser4'@'localhost';
GRANT TRIGGER ON *.* TO 'testuser1'@'localhost';
GRANT TRIGGER ON *.* TO 'testuser3'@'localhost';
GRANT TRIGGER ON *.* TO 'testuser4'@'localhost';
GRANT ALL ON db_datadict.* TO 'testuser1'@'localhost' WITH GRANT OPTION;
# Establish connection testuser1 (user=testuser1)
CREATE TABLE db_datadict.t1 (f1 INT, f2 INT, f3 INT)
@ -119,56 +128,63 @@ ENGINE = <engine_type>;
CREATE TRIGGER trg1 BEFORE INSERT
ON db_datadict.t1 FOR EACH ROW SET @test_before = 2, new.f1 = @test_before;
GRANT ALL ON db_datadict.t1 TO 'testuser2'@'localhost';
REVOKE TRIGGER ON db_datadict.t1 FROM 'testuser2'@'localhost';
GRANT SELECT ON db_datadict.t1 TO 'testuser3'@'localhost';
SELECT * FROM information_schema.triggers
WHERE trigger_name = 'trg1';
TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER
NULL db_datadict trg1 INSERT NULL db_datadict t1 0 NULL SET @test_before = 2, new.f1 = @test_before ROW BEFORE NULL NULL OLD NEW NULL testuser1@localhost
TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
NULL db_datadict trg1 INSERT NULL db_datadict t1 0 NULL SET @test_before = 2, new.f1 = @test_before ROW BEFORE NULL NULL OLD NEW NULL testuser1@localhost latin1 latin1_swedish_ci latin1_swedish_ci
SHOW TRIGGERS FROM db_datadict;
Trigger Event Table Statement Timing Created sql_mode Definer
trg1 INSERT t1 SET @test_before = 2, new.f1 = @test_before BEFORE NULL testuser1@localhost
Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
trg1 INSERT t1 SET @test_before = 2, new.f1 = @test_before BEFORE NULL testuser1@localhost latin1 latin1_swedish_ci latin1_swedish_ci
# Establish connection testuser2 (user=testuser2)
SHOW GRANTS FOR 'testuser2'@'localhost';
Grants for testuser2@localhost
GRANT USAGE ON *.* TO 'testuser2'@'localhost'
GRANT ALL PRIVILEGES ON `db_datadict`.`t1` TO 'testuser2'@'localhost'
# No SUPER Privilege --> no result for query
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW ON `db_datadict`.`t1` TO 'testuser2'@'localhost'
# No TRIGGER Privilege --> no result for query
SELECT * FROM information_schema.triggers
WHERE trigger_name = 'trg1';
TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER
TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
SHOW TRIGGERS FROM db_datadict;
Trigger Event Table Statement Timing Created sql_mode Definer
Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
# Establish connection testuser3 (user=testuser3)
SHOW GRANTS FOR 'testuser3'@'localhost';
Grants for testuser3@localhost
GRANT SUPER ON *.* TO 'testuser3'@'localhost'
GRANT TRIGGER ON *.* TO 'testuser3'@'localhost'
GRANT SELECT ON `db_datadict`.`t1` TO 'testuser3'@'localhost'
# SUPER Privilege + SELECT Privilege on t1 --> result for query
# TRIGGER Privilege + SELECT Privilege on t1 --> result for query
SELECT * FROM information_schema.triggers
WHERE trigger_name = 'trg1';
TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER
NULL db_datadict trg1 INSERT NULL db_datadict t1 0 NULL SET @test_before = 2, new.f1 = @test_before ROW BEFORE NULL NULL OLD NEW NULL testuser1@localhost
TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
NULL db_datadict trg1 INSERT NULL db_datadict t1 0 NULL SET @test_before = 2, new.f1 = @test_before ROW BEFORE NULL NULL OLD NEW NULL testuser1@localhost latin1 latin1_swedish_ci latin1_swedish_ci
SHOW TRIGGERS FROM db_datadict;
Trigger Event Table Statement Timing Created sql_mode Definer
trg1 INSERT t1 SET @test_before = 2, new.f1 = @test_before BEFORE NULL testuser1@localhost
Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
trg1 INSERT t1 SET @test_before = 2, new.f1 = @test_before BEFORE NULL testuser1@localhost latin1 latin1_swedish_ci latin1_swedish_ci
# Establish connection testuser4 (user=testuser4)
SHOW GRANTS FOR 'testuser4'@'localhost';
Grants for testuser4@localhost
GRANT SUPER ON *.* TO 'testuser4'@'localhost'
# SUPER Privilege + no SELECT Privilege on t1 --> no result for query
GRANT TRIGGER ON *.* TO 'testuser4'@'localhost'
# TRIGGER Privilege + no SELECT Privilege on t1 --> result for query
SELECT * FROM db_datadict.t1;
ERROR 42000: SELECT command denied to user 'testuser4'@'localhost' for table 't1'
DESC db_datadict.t1;
ERROR 42000: SELECT command denied to user 'testuser4'@'localhost' for table 't1'
SELECT * FROM information_schema.triggers
WHERE trigger_name = 'trg1';
TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER
TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
NULL db_datadict trg1 INSERT NULL db_datadict t1 0 NULL SET @test_before = 2, new.f1 = @test_before ROW BEFORE NULL NULL OLD NEW NULL testuser1@localhost latin1 latin1_swedish_ci latin1_swedish_ci
SHOW TRIGGERS FROM db_datadict;
Trigger Event Table Statement Timing Created sql_mode Definer
Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
trg1 INSERT t1 SET @test_before = 2, new.f1 = @test_before BEFORE NULL testuser1@localhost latin1 latin1_swedish_ci latin1_swedish_ci
# Switch to connection default and close connections testuser1 - testuser4
SELECT * FROM information_schema.triggers
WHERE trigger_name = 'trg1';
TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER
NULL db_datadict trg1 INSERT NULL db_datadict t1 0 NULL SET @test_before = 2, new.f1 = @test_before ROW BEFORE NULL NULL OLD NEW NULL testuser1@localhost
TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION
NULL db_datadict trg1 INSERT NULL db_datadict t1 0 NULL SET @test_before = 2, new.f1 = @test_before ROW BEFORE NULL NULL OLD NEW NULL testuser1@localhost latin1 latin1_swedish_ci latin1_swedish_ci
SHOW TRIGGERS FROM db_datadict;
Trigger Event Table Statement Timing Created sql_mode Definer
trg1 INSERT t1 SET @test_before = 2, new.f1 = @test_before BEFORE NULL testuser1@localhost
Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation
trg1 INSERT t1 SET @test_before = 2, new.f1 = @test_before BEFORE NULL testuser1@localhost latin1 latin1_swedish_ci latin1_swedish_ci
DROP USER 'testuser1'@'localhost';
DROP USER 'testuser2'@'localhost';
DROP USER 'testuser3'@'localhost';