1
# suite/funcs_1/t/is_schemata_is_mysql_test.test
3
# Check the content of information_schema.schemata about the databases
4
# information_schema and mysql visible to high and low privileged users.
7
# 2008-01-23 mleich WL#4203 Reorganize and fix the data dictionary tests of
9
# Create this script based on older scripts and new code.
13
--echo #################################################################################
14
--echo # Testcases 3.2.9.2 + 3.2.9.3: INFORMATION_SCHEMA.SCHEMATA accessible information
15
--echo #################################################################################
16
# 3.2.9.2 Ensure that the table shows the relevant information for every
17
# database on which the current user or PUBLIC have privileges.
18
# 3.2.9.3 Ensure that the table does not show any information on any databases
19
# on which the current user and PUBLIC have no privileges.
22
DROP DATABASE IF EXISTS db_datadict;
24
CREATE DATABASE db_datadict;
26
# Create a low privileged user.
27
# Note: The database db_datadict is just a "home" for the low privileged user
28
# and not in the focus of testing.
29
--error 0,ER_CANNOT_USER
30
DROP USER 'testuser1'@'localhost';
31
CREATE USER 'testuser1'@'localhost';
32
GRANT SELECT ON db_datadict.* TO 'testuser1'@'localhost';
34
let $my_select = SELECT * FROM information_schema.schemata
35
WHERE schema_name IN ('information_schema','mysql','test')
37
let $my_show1 = SHOW DATABASES LIKE 'information_schema';
38
let $my_show2 = SHOW DATABASES LIKE 'mysql';
39
let $my_show3 = SHOW DATABASES LIKE 'test';
45
--echo # Establish connection testuser1 (user=testuser1)
46
--replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK
47
connect (testuser1, localhost, testuser1, , db_datadict);
54
--echo # Switch to connection default and close connection testuser1
56
DROP USER 'testuser1'@'localhost';
57
DROP DATABASE db_datadict;