[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@18.223.171.83: ~ $
SET @old_log_bin_trust_function_creators= @@global.log_bin_trust_function_creators;
SET GLOBAL log_bin_trust_function_creators = 1;
drop table if exists t1;
drop database if exists mysqltest;
call mtr.add_suppression("Did not write failed .* ");
SET NAMES binary;
delete from mysql.user where user='mysqltest_1';
delete from mysql.db where user='mysqltest_1';
flush privileges;
grant select on mysqltest.* to mysqltest_1@localhost require cipher "EDH-RSA-DES-CBC3-SHA";
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA'
GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
grant delete on mysqltest.* to mysqltest_1@localhost;
select * from mysql.user where user="mysqltest_1";
Host	localhost
User	mysqltest_1
Password	
Select_priv	N
Insert_priv	N
Update_priv	N
Delete_priv	N
Create_priv	N
Drop_priv	N
Reload_priv	N
Shutdown_priv	N
Process_priv	N
File_priv	N
Grant_priv	N
References_priv	N
Index_priv	N
Alter_priv	N
Show_db_priv	N
Super_priv	N
Create_tmp_table_priv	N
Lock_tables_priv	N
Execute_priv	N
Repl_slave_priv	N
Repl_client_priv	N
Create_view_priv	N
Show_view_priv	N
Create_routine_priv	N
Alter_routine_priv	N
Create_user_priv	N
Event_priv	N
Trigger_priv	N
Create_tablespace_priv	N
ssl_type	SPECIFIED
ssl_cipher	EDH-RSA-DES-CBC3-SHA
x509_issuer	
x509_subject	
max_questions	0
max_updates	0
max_connections	0
max_user_connections	0
plugin	mysql_native_password
authentication_string	
password_expired	N
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA'
GRANT SELECT, DELETE ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
revoke delete on mysqltest.* from mysqltest_1@localhost;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA'
GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
grant select on mysqltest.* to mysqltest_1@localhost require NONE;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
grant USAGE on mysqltest.* to mysqltest_1@localhost require cipher "EDH-RSA-DES-CBC3-SHA" AND SUBJECT "testsubject" ISSUER "MySQL AB";
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE ISSUER 'MySQL AB' SUBJECT 'testsubject' CIPHER 'EDH-RSA-DES-CBC3-SHA'
GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
revoke all privileges on mysqltest.* from mysqltest_1@localhost;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE ISSUER 'MySQL AB' SUBJECT 'testsubject' CIPHER 'EDH-RSA-DES-CBC3-SHA'
delete from mysql.user where user='mysqltest_1';
flush privileges;
delete from mysql.user where user='mysqltest_1';
flush privileges;
grant usage on *.* to mysqltest_1@localhost with max_queries_per_hour 10;
select * from mysql.user where user="mysqltest_1";
Host	localhost
User	mysqltest_1
Password	
Select_priv	N
Insert_priv	N
Update_priv	N
Delete_priv	N
Create_priv	N
Drop_priv	N
Reload_priv	N
Shutdown_priv	N
Process_priv	N
File_priv	N
Grant_priv	N
References_priv	N
Index_priv	N
Alter_priv	N
Show_db_priv	N
Super_priv	N
Create_tmp_table_priv	N
Lock_tables_priv	N
Execute_priv	N
Repl_slave_priv	N
Repl_client_priv	N
Create_view_priv	N
Show_view_priv	N
Create_routine_priv	N
Alter_routine_priv	N
Create_user_priv	N
Event_priv	N
Trigger_priv	N
Create_tablespace_priv	N
ssl_type	
ssl_cipher	
x509_issuer	
x509_subject	
max_questions	10
max_updates	0
max_connections	0
max_user_connections	0
plugin	mysql_native_password
authentication_string	
password_expired	N
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10
grant usage on *.* to mysqltest_1@localhost with max_updates_per_hour 20 max_connections_per_hour 30;
select * from mysql.user where user="mysqltest_1";
Host	localhost
User	mysqltest_1
Password	
Select_priv	N
Insert_priv	N
Update_priv	N
Delete_priv	N
Create_priv	N
Drop_priv	N
Reload_priv	N
Shutdown_priv	N
Process_priv	N
File_priv	N
Grant_priv	N
References_priv	N
Index_priv	N
Alter_priv	N
Show_db_priv	N
Super_priv	N
Create_tmp_table_priv	N
Lock_tables_priv	N
Execute_priv	N
Repl_slave_priv	N
Repl_client_priv	N
Create_view_priv	N
Show_view_priv	N
Create_routine_priv	N
Alter_routine_priv	N
Create_user_priv	N
Event_priv	N
Trigger_priv	N
Create_tablespace_priv	N
ssl_type	
ssl_cipher	
x509_issuer	
x509_subject	
max_questions	10
max_updates	20
max_connections	30
max_user_connections	0
plugin	mysql_native_password
authentication_string	
password_expired	N
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10 MAX_UPDATES_PER_HOUR 20 MAX_CONNECTIONS_PER_HOUR 30
flush privileges;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10 MAX_UPDATES_PER_HOUR 20 MAX_CONNECTIONS_PER_HOUR 30
delete from mysql.user where user='mysqltest_1';
flush privileges;
grant CREATE TEMPORARY TABLES, LOCK TABLES on mysqltest.* to mysqltest_1@localhost;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT CREATE TEMPORARY TABLES, LOCK TABLES ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
flush privileges;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT CREATE TEMPORARY TABLES, LOCK TABLES ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
revoke CREATE TEMPORARY TABLES on mysqltest.* from mysqltest_1@localhost;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT LOCK TABLES ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
grant ALL PRIVILEGES on mysqltest.* to mysqltest_1@localhost with GRANT OPTION;
flush privileges;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
revoke LOCK TABLES, ALTER on mysqltest.* from mysqltest_1@localhost;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, CREATE TEMPORARY TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER ON `mysqltest`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
revoke all privileges on mysqltest.* from mysqltest_1@localhost;
delete from mysql.user where user='mysqltest_1';
flush privileges;
grant usage on test.* to mysqltest_1@localhost with grant option;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT USAGE ON `mysqltest`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
GRANT USAGE ON `test`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
delete from mysql.user where user='mysqltest_1';
delete from mysql.db where user='mysqltest_1';
delete from mysql.tables_priv where user='mysqltest_1';
delete from mysql.columns_priv where user='mysqltest_1';
flush privileges;
show grants for mysqltest_1@localhost;
ERROR 42000: There is no such grant defined for user 'mysqltest_1' on host 'localhost'
create table t1 (a int);
GRANT select,update,insert on t1 to mysqltest_1@localhost;
GRANT select (a), update (a),insert(a), references(a) on t1 to mysqltest_1@localhost;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT SELECT, SELECT (a), INSERT, INSERT (a), UPDATE, UPDATE (a), REFERENCES (a) ON `test`.`t1` TO 'mysqltest_1'@'localhost'
select table_priv,column_priv from mysql.tables_priv where user="mysqltest_1";
table_priv	column_priv
Select,Insert,Update	Select,Insert,Update,References
REVOKE select (a), update on t1 from mysqltest_1@localhost;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT SELECT, INSERT, INSERT (a), REFERENCES (a) ON `test`.`t1` TO 'mysqltest_1'@'localhost'
REVOKE select,update,insert,insert (a) on t1 from mysqltest_1@localhost;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT REFERENCES (a) ON `test`.`t1` TO 'mysqltest_1'@'localhost'
GRANT select,references on t1 to mysqltest_1@localhost;
select table_priv,column_priv from mysql.tables_priv where user="mysqltest_1";
table_priv	column_priv
Select,References	References
grant all on test.* to mysqltest_3@localhost with grant option;
revoke all on test.* from mysqltest_3@localhost;
show grants for mysqltest_3@localhost;
Grants for mysqltest_3@localhost
GRANT USAGE ON *.* TO 'mysqltest_3'@'localhost'
GRANT USAGE ON `test`.* TO 'mysqltest_3'@'localhost' WITH GRANT OPTION
revoke grant option on test.* from mysqltest_3@localhost;
show grants for mysqltest_3@localhost;
Grants for mysqltest_3@localhost
GRANT USAGE ON *.* TO 'mysqltest_3'@'localhost'
grant all on test.t1 to mysqltest_2@localhost with grant option;
revoke all on test.t1 from mysqltest_2@localhost;
show grants for mysqltest_2@localhost;
Grants for mysqltest_2@localhost
GRANT USAGE ON *.* TO 'mysqltest_2'@'localhost'
GRANT USAGE ON `test`.`t1` TO 'mysqltest_2'@'localhost' WITH GRANT OPTION
revoke grant option on test.t1 from mysqltest_2@localhost;
show grants for mysqltest_2@localhost;
Grants for mysqltest_2@localhost
GRANT USAGE ON *.* TO 'mysqltest_2'@'localhost'
delete from mysql.user where user='mysqltest_1' or user="mysqltest_2" or user="mysqltest_3";
delete from mysql.db where user='mysqltest_1' or user="mysqltest_2" or user="mysqltest_3";
delete from mysql.tables_priv where user='mysqltest_1' or user="mysqltest_2" or user="mysqltest_3";
delete from mysql.columns_priv where user='mysqltest_1' or user="mysqltest_2" or user="mysqltest_3";
flush privileges;
drop table t1;
GRANT FILE on mysqltest.*  to mysqltest_1@localhost;
ERROR HY000: Incorrect usage of DB GRANT and GLOBAL PRIVILEGES
select 1;
1
1
insert into mysql.user (host, user) values ('localhost', 'test11');
Warnings:
Warning	1364	Field 'ssl_cipher' doesn't have a default value
Warning	1364	Field 'x509_issuer' doesn't have a default value
Warning	1364	Field 'x509_subject' doesn't have a default value
insert into mysql.db (host, db, user, select_priv) values
('localhost', 'a%', 'test11', 'Y'), ('localhost', 'ab%', 'test11', 'Y');
alter table mysql.db order by db asc;
flush privileges;
show grants for test11@localhost;
Grants for test11@localhost
GRANT USAGE ON *.* TO 'test11'@'localhost'
GRANT SELECT ON `ab%`.* TO 'test11'@'localhost'
GRANT SELECT ON `a%`.* TO 'test11'@'localhost'
alter table mysql.db order by db desc;
flush privileges;
show grants for test11@localhost;
Grants for test11@localhost
GRANT USAGE ON *.* TO 'test11'@'localhost'
GRANT SELECT ON `ab%`.* TO 'test11'@'localhost'
GRANT SELECT ON `a%`.* TO 'test11'@'localhost'
delete from mysql.user where user='test11';
delete from mysql.db where user='test11';
create database mysqltest1;
grant usage on mysqltest1.* to test6123 identified by 'magic123';
select host,db,user,select_priv,insert_priv from mysql.db where db="mysqltest1";
host	db	user	select_priv	insert_priv
delete from mysql.user where user='test6123';
drop database mysqltest1;
create table t1 (a int);
grant ALL PRIVILEGES on *.* to drop_user2@localhost with GRANT OPTION;
show grants for drop_user2@localhost;
Grants for drop_user2@localhost
GRANT ALL PRIVILEGES ON *.* TO 'drop_user2'@'localhost' WITH GRANT OPTION
revoke all privileges, grant option from drop_user2@localhost;
drop user drop_user2@localhost;
grant ALL PRIVILEGES on *.* to drop_user@localhost with GRANT OPTION;
grant ALL PRIVILEGES on test.* to drop_user@localhost with GRANT OPTION;
grant select(a) on test.t1 to drop_user@localhost;
show grants for drop_user@localhost;
Grants for drop_user@localhost
GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION
GRANT ALL PRIVILEGES ON `test`.* TO 'drop_user'@'localhost' WITH GRANT OPTION
GRANT SELECT (a) ON `test`.`t1` TO 'drop_user'@'localhost'
set sql_mode=ansi_quotes;
show grants for drop_user@localhost;
Grants for drop_user@localhost
GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION
GRANT ALL PRIVILEGES ON "test".* TO 'drop_user'@'localhost' WITH GRANT OPTION
GRANT SELECT (a) ON "test"."t1" TO 'drop_user'@'localhost'
set sql_mode=default;
set sql_quote_show_create=0;
show grants for drop_user@localhost;
Grants for drop_user@localhost
GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION
GRANT ALL PRIVILEGES ON test.* TO 'drop_user'@'localhost' WITH GRANT OPTION
GRANT SELECT (a) ON test.t1 TO 'drop_user'@'localhost'
set sql_mode="ansi_quotes";
show grants for drop_user@localhost;
Grants for drop_user@localhost
GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION
GRANT ALL PRIVILEGES ON test.* TO 'drop_user'@'localhost' WITH GRANT OPTION
GRANT SELECT (a) ON test.t1 TO 'drop_user'@'localhost'
set sql_quote_show_create=1;
show grants for drop_user@localhost;
Grants for drop_user@localhost
GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION
GRANT ALL PRIVILEGES ON "test".* TO 'drop_user'@'localhost' WITH GRANT OPTION
GRANT SELECT (a) ON "test"."t1" TO 'drop_user'@'localhost'
set sql_mode="";
show grants for drop_user@localhost;
Grants for drop_user@localhost
GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION
GRANT ALL PRIVILEGES ON `test`.* TO 'drop_user'@'localhost' WITH GRANT OPTION
GRANT SELECT (a) ON `test`.`t1` TO 'drop_user'@'localhost'
revoke all privileges, grant option from drop_user@localhost;
show grants for drop_user@localhost;
Grants for drop_user@localhost
GRANT USAGE ON *.* TO 'drop_user'@'localhost'
drop user drop_user@localhost;
revoke all privileges, grant option from drop_user@localhost;
ERROR HY000: Can't revoke all privileges for one or more of the requested users
grant select(a) on test.t1 to drop_user1@localhost;
grant select on test.t1 to drop_user2@localhost;
grant select on test.* to drop_user3@localhost;
grant select on *.* to drop_user4@localhost;
drop user drop_user1@localhost, drop_user2@localhost, drop_user3@localhost,
drop_user4@localhost;
revoke all privileges, grant option from drop_user1@localhost, drop_user2@localhost,
drop_user3@localhost, drop_user4@localhost;
ERROR HY000: Can't revoke all privileges for one or more of the requested users
drop user drop_user1@localhost, drop_user2@localhost, drop_user3@localhost,
drop_user4@localhost;
ERROR HY000: Operation DROP USER failed for 'drop_user1'@'localhost','drop_user2'@'localhost','drop_user3'@'localhost','drop_user4'@'localhost'
drop table t1;
grant usage on *.* to mysqltest_1@localhost identified by "password";
grant select, update, insert on test.* to mysqltest_1@localhost;
show grants for mysqltest_1@localhost;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' IDENTIFIED BY PASSWORD '*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19'
GRANT SELECT, INSERT, UPDATE ON `test`.* TO 'mysqltest_1'@'localhost'
drop user mysqltest_1@localhost;
SET NAMES koi8r;
CREATE DATABASE ��;
USE ��;
CREATE TABLE �� (��� INT);
GRANT SELECT ON ��.* TO ����@localhost;
SHOW GRANTS FOR ����@localhost;
Grants for ����@localhost
GRANT USAGE ON *.* TO '����'@'localhost'
GRANT SELECT ON `��`.* TO '����'@'localhost'
REVOKE SELECT ON ��.* FROM ����@localhost;
GRANT SELECT ON ��.�� TO ����@localhost;
SHOW GRANTS FOR ����@localhost;
Grants for ����@localhost
GRANT USAGE ON *.* TO '����'@'localhost'
GRANT SELECT ON `��`.`��` TO '����'@'localhost'
REVOKE SELECT ON ��.�� FROM ����@localhost;
GRANT SELECT (���) ON ��.�� TO ����@localhost;
SHOW GRANTS FOR ����@localhost;
Grants for ����@localhost
GRANT USAGE ON *.* TO '����'@'localhost'
GRANT SELECT (���) ON `��`.`��` TO '����'@'localhost'
REVOKE SELECT (���) ON ��.�� FROM ����@localhost;
DROP USER ����@localhost;
DROP DATABASE ��;
SET NAMES latin1;
USE test;
CREATE TABLE t1 (a int );
CREATE TABLE t2 LIKE t1;
CREATE TABLE t3 LIKE t1;
CREATE TABLE t4 LIKE t1;
CREATE TABLE t5 LIKE t1;
CREATE TABLE t6 LIKE t1;
CREATE TABLE t7 LIKE t1;
CREATE TABLE t8 LIKE t1;
CREATE TABLE t9 LIKE t1;
CREATE TABLE t10 LIKE t1;
CREATE DATABASE testdb1;
CREATE DATABASE testdb2;
CREATE DATABASE testdb3;
CREATE DATABASE testdb4;
CREATE DATABASE testdb5;
CREATE DATABASE testdb6;
CREATE DATABASE testdb7;
CREATE DATABASE testdb8;
CREATE DATABASE testdb9;
CREATE DATABASE testdb10;
GRANT ALL ON testdb1.* TO testuser@localhost;
GRANT ALL ON testdb2.* TO testuser@localhost;
GRANT ALL ON testdb3.* TO testuser@localhost;
GRANT ALL ON testdb4.* TO testuser@localhost;
GRANT ALL ON testdb5.* TO testuser@localhost;
GRANT ALL ON testdb6.* TO testuser@localhost;
GRANT ALL ON testdb7.* TO testuser@localhost;
GRANT ALL ON testdb8.* TO testuser@localhost;
GRANT ALL ON testdb9.* TO testuser@localhost;
GRANT ALL ON testdb10.* TO testuser@localhost;
GRANT SELECT ON test.t1 TO testuser@localhost;
GRANT SELECT ON test.t2 TO testuser@localhost;
GRANT SELECT ON test.t3 TO testuser@localhost;
GRANT SELECT ON test.t4 TO testuser@localhost;
GRANT SELECT ON test.t5 TO testuser@localhost;
GRANT SELECT ON test.t6 TO testuser@localhost;
GRANT SELECT ON test.t7 TO testuser@localhost;
GRANT SELECT ON test.t8 TO testuser@localhost;
GRANT SELECT ON test.t9 TO testuser@localhost;
GRANT SELECT ON test.t10 TO testuser@localhost;
GRANT SELECT (a) ON test.t1 TO testuser@localhost;
GRANT SELECT (a) ON test.t2 TO testuser@localhost;
GRANT SELECT (a) ON test.t3 TO testuser@localhost;
GRANT SELECT (a) ON test.t4 TO testuser@localhost;
GRANT SELECT (a) ON test.t5 TO testuser@localhost;
GRANT SELECT (a) ON test.t6 TO testuser@localhost;
GRANT SELECT (a) ON test.t7 TO testuser@localhost;
GRANT SELECT (a) ON test.t8 TO testuser@localhost;
GRANT SELECT (a) ON test.t9 TO testuser@localhost;
GRANT SELECT (a) ON test.t10 TO testuser@localhost;
REVOKE ALL PRIVILEGES, GRANT OPTION FROM testuser@localhost;
SHOW GRANTS FOR testuser@localhost;
Grants for testuser@localhost
GRANT USAGE ON *.* TO 'testuser'@'localhost'
DROP USER testuser@localhost;
DROP TABLE t1,t2,t3,t4,t5,t6,t7,t8,t9,t10;
DROP DATABASE testdb1;
DROP DATABASE testdb2;
DROP DATABASE testdb3;
DROP DATABASE testdb4;
DROP DATABASE testdb5;
DROP DATABASE testdb6;
DROP DATABASE testdb7;
DROP DATABASE testdb8;
DROP DATABASE testdb9;
DROP DATABASE testdb10;
create table t1(a int, b int, c int, d int);
grant insert(b), insert(c), insert(d), insert(a) on t1 to grant_user@localhost;
show grants for grant_user@localhost;
Grants for grant_user@localhost
GRANT USAGE ON *.* TO 'grant_user'@'localhost'
GRANT INSERT (a, d, c, b) ON `test`.`t1` TO 'grant_user'@'localhost'
select Host,Db,User,Table_name,Column_name,Column_priv from mysql.columns_priv order by Column_name;
Host	Db	User	Table_name	Column_name	Column_priv
localhost	test	grant_user	t1	a	Insert
localhost	test	grant_user	t1	b	Insert
localhost	test	grant_user	t1	c	Insert
localhost	test	grant_user	t1	d	Insert
revoke ALL PRIVILEGES on t1 from grant_user@localhost;
show grants for grant_user@localhost;
Grants for grant_user@localhost
GRANT USAGE ON *.* TO 'grant_user'@'localhost'
select Host,Db,User,Table_name,Column_name,Column_priv from mysql.columns_priv;
Host	Db	User	Table_name	Column_name	Column_priv
drop user grant_user@localhost;
drop table t1;
create database mysqltest_1;
create database mysqltest_2;
create table mysqltest_1.t1 select 1 a, 2 q;
create table mysqltest_1.t2 select 1 b, 2 r;
create table mysqltest_2.t1 select 1 c, 2 s;
create table mysqltest_2.t2 select 1 d, 2 t;
grant update (a) on mysqltest_1.t1 to mysqltest_3@localhost;
grant select (b) on mysqltest_1.t2 to mysqltest_3@localhost;
grant select (c) on mysqltest_2.t1 to mysqltest_3@localhost;
grant update (d) on mysqltest_2.t2 to mysqltest_3@localhost;
SELECT * FROM INFORMATION_SCHEMA.COLUMN_PRIVILEGES
WHERE GRANTEE = '''mysqltest_3''@''localhost'''
 ORDER BY TABLE_NAME,COLUMN_NAME,PRIVILEGE_TYPE;
GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	PRIVILEGE_TYPE	IS_GRANTABLE
'mysqltest_3'@'localhost'	def	mysqltest_1	t1	a	UPDATE	NO
'mysqltest_3'@'localhost'	def	mysqltest_2	t1	c	SELECT	NO
'mysqltest_3'@'localhost'	def	mysqltest_1	t2	b	SELECT	NO
'mysqltest_3'@'localhost'	def	mysqltest_2	t2	d	UPDATE	NO
SELECT * FROM INFORMATION_SCHEMA.TABLE_PRIVILEGES
WHERE GRANTEE = '''mysqltest_3''@''localhost'''
 ORDER BY TABLE_NAME,PRIVILEGE_TYPE;
GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	PRIVILEGE_TYPE	IS_GRANTABLE
SELECT * from INFORMATION_SCHEMA.SCHEMA_PRIVILEGES
WHERE GRANTEE = '''mysqltest_3''@''localhost'''
 ORDER BY TABLE_SCHEMA,PRIVILEGE_TYPE;
GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	PRIVILEGE_TYPE	IS_GRANTABLE
SELECT * from INFORMATION_SCHEMA.USER_PRIVILEGES
WHERE GRANTEE = '''mysqltest_3''@''localhost'''
 ORDER BY TABLE_CATALOG,PRIVILEGE_TYPE;
GRANTEE	TABLE_CATALOG	PRIVILEGE_TYPE	IS_GRANTABLE
'mysqltest_3'@'localhost'	def	USAGE	NO
update mysqltest_1.t1, mysqltest_1.t2 set q=10 where b=1;
ERROR 42000: UPDATE command denied to user 'mysqltest_3'@'localhost' for column 'q' in table 't1'
update mysqltest_1.t2, mysqltest_2.t2 set d=20 where d=1;
ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for column 'd' in table 't2'
update mysqltest_1.t1, mysqltest_2.t2 set d=20 where d=1;
ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for table 't1'
update mysqltest_2.t1, mysqltest_1.t2 set c=20 where b=1;
ERROR 42000: UPDATE command denied to user 'mysqltest_3'@'localhost' for table 't1'
update mysqltest_2.t1, mysqltest_2.t2 set d=10 where s=2;
ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for column 's' in table 't1'
update mysqltest_1.t1, mysqltest_2.t2 set a=10,d=10;
update mysqltest_1.t1, mysqltest_2.t1 set a=20 where c=20;
select t1.*,t2.* from mysqltest_1.t1,mysqltest_1.t2;
a	q	b	r
10	2	1	2
select t1.*,t2.* from mysqltest_2.t1,mysqltest_2.t2;
c	s	d	t
1	2	10	2
revoke all on mysqltest_1.t1 from mysqltest_3@localhost;
revoke all on mysqltest_1.t2 from mysqltest_3@localhost;
revoke all on mysqltest_2.t1 from mysqltest_3@localhost;
revoke all on mysqltest_2.t2 from mysqltest_3@localhost;
grant all on mysqltest_2.* to mysqltest_3@localhost;
grant select on *.* to mysqltest_3@localhost;
grant select on mysqltest_2.t1 to mysqltest_3@localhost;
flush privileges;
use mysqltest_1;
update mysqltest_2.t1, mysqltest_2.t2 set c=500,d=600;
update mysqltest_1.t1, mysqltest_1.t2 set a=100,b=200;
ERROR 42000: UPDATE command denied to user 'mysqltest_3'@'localhost' for table 't1'
use mysqltest_2;
update mysqltest_1.t1, mysqltest_1.t2 set a=100,b=200;
ERROR 42000: UPDATE command denied to user 'mysqltest_3'@'localhost' for table 't1'
update mysqltest_2.t1, mysqltest_1.t2 set c=100,b=200;
ERROR 42000: UPDATE command denied to user 'mysqltest_3'@'localhost' for table 't2'
update mysqltest_1.t1, mysqltest_2.t2 set a=100,d=200;
ERROR 42000: UPDATE command denied to user 'mysqltest_3'@'localhost' for table 't1'
select t1.*,t2.* from mysqltest_1.t1,mysqltest_1.t2;
a	q	b	r
10	2	1	2
select t1.*,t2.* from mysqltest_2.t1,mysqltest_2.t2;
c	s	d	t
500	2	600	2
delete from mysql.user where user='mysqltest_3';
delete from mysql.db where user="mysqltest_3";
delete from mysql.tables_priv where user="mysqltest_3";
delete from mysql.columns_priv where user="mysqltest_3";
flush privileges;
drop database mysqltest_1;
drop database mysqltest_2;
SHOW PRIVILEGES;
Privilege	Context	Comment
Alter	Tables	To alter the table
Alter routine	Functions,Procedures	To alter or drop stored functions/procedures
Create	Databases,Tables,Indexes	To create new databases and tables
Create routine	Databases	To use CREATE FUNCTION/PROCEDURE
Create temporary tables	Databases	To use CREATE TEMPORARY TABLE
Create view	Tables	To create new views
Create user	Server Admin	To create new users
Delete	Tables	To delete existing rows
Drop	Databases,Tables	To drop databases, tables, and views
Event	Server Admin	To create, alter, drop and execute events
Execute	Functions,Procedures	To execute stored routines
File	File access on server	To read and write files on the server
Grant option	Databases,Tables,Functions,Procedures	To give to other users those privileges you possess
Index	Tables	To create or drop indexes
Insert	Tables	To insert data into tables
Lock tables	Databases	To use LOCK TABLES (together with SELECT privilege)
Process	Server Admin	To view the plain text of currently executing queries
Proxy	Server Admin	To make proxy user possible
References	Databases,Tables	To have references on tables
Reload	Server Admin	To reload or refresh tables, logs and privileges
Replication client	Server Admin	To ask where the slave or master servers are
Replication slave	Server Admin	To read binary log events from the master
Select	Tables	To retrieve rows from table
Show databases	Server Admin	To see all databases with SHOW DATABASES
Show view	Tables	To see views with SHOW CREATE VIEW
Shutdown	Server Admin	To shut down the server
Super	Server Admin	To use KILL thread, SET GLOBAL, CHANGE MASTER, etc.
Trigger	Tables	To use triggers
Create tablespace	Server Admin	To create/alter/drop tablespaces
Update	Tables	To update existing rows
Usage	Server Admin	No privileges - allow connect only
create database mysqltest;
create table mysqltest.t1 (a int,b int,c int);
grant all on mysqltest.t1 to mysqltest_1@localhost;
alter table t1 rename t2;
ERROR 42000: INSERT, CREATE command denied to user 'mysqltest_1'@'localhost' for table 't2'
revoke all privileges on mysqltest.t1 from mysqltest_1@localhost;
delete from mysql.user where user=_binary'mysqltest_1';
drop database mysqltest;
CREATE USER dummy@localhost;
CREATE DATABASE mysqltest;
CREATE TABLE mysqltest.dummytable (dummyfield INT);
CREATE VIEW mysqltest.dummyview AS SELECT dummyfield FROM mysqltest.dummytable;
GRANT ALL PRIVILEGES ON mysqltest.dummytable TO dummy@localhost;
GRANT ALL PRIVILEGES ON mysqltest.dummyview TO dummy@localhost;
SHOW GRANTS FOR dummy@localhost;
Grants for dummy@localhost
GRANT USAGE ON *.* TO 'dummy'@'localhost'
GRANT ALL PRIVILEGES ON `mysqltest`.`dummyview` TO 'dummy'@'localhost'
GRANT ALL PRIVILEGES ON `mysqltest`.`dummytable` TO 'dummy'@'localhost'
use INFORMATION_SCHEMA;
SELECT TABLE_SCHEMA, TABLE_NAME, GROUP_CONCAT(PRIVILEGE_TYPE ORDER BY
PRIVILEGE_TYPE SEPARATOR ', ') AS PRIVILEGES FROM TABLE_PRIVILEGES WHERE GRANTEE
= '\'dummy\'@\'localhost\'' GROUP BY TABLE_SCHEMA, TABLE_NAME;
TABLE_SCHEMA	TABLE_NAME	PRIVILEGES
mysqltest	dummytable	ALTER, CREATE, CREATE VIEW, DELETE, DROP, INDEX, INSERT, REFERENCES, SELECT, SHOW VIEW, TRIGGER, UPDATE
mysqltest	dummyview	ALTER, CREATE, CREATE VIEW, DELETE, DROP, INDEX, INSERT, REFERENCES, SELECT, SHOW VIEW, TRIGGER, UPDATE
FLUSH PRIVILEGES;
SHOW GRANTS FOR dummy@localhost;
Grants for dummy@localhost
GRANT USAGE ON *.* TO 'dummy'@'localhost'
GRANT ALL PRIVILEGES ON `mysqltest`.`dummyview` TO 'dummy'@'localhost'
GRANT ALL PRIVILEGES ON `mysqltest`.`dummytable` TO 'dummy'@'localhost'
SELECT TABLE_SCHEMA, TABLE_NAME, GROUP_CONCAT(PRIVILEGE_TYPE ORDER BY
PRIVILEGE_TYPE SEPARATOR ', ') AS PRIVILEGES FROM TABLE_PRIVILEGES WHERE GRANTEE
= '\'dummy\'@\'localhost\'' GROUP BY TABLE_SCHEMA, TABLE_NAME;
TABLE_SCHEMA	TABLE_NAME	PRIVILEGES
mysqltest	dummytable	ALTER, CREATE, CREATE VIEW, DELETE, DROP, INDEX, INSERT, REFERENCES, SELECT, SHOW VIEW, TRIGGER, UPDATE
mysqltest	dummyview	ALTER, CREATE, CREATE VIEW, DELETE, DROP, INDEX, INSERT, REFERENCES, SELECT, SHOW VIEW, TRIGGER, UPDATE
SHOW FIELDS FROM mysql.tables_priv;
Field	Type	Null	Key	Default	Extra
Host	char(60)	NO	PRI		
Db	char(64)	NO	PRI		
User	char(16)	NO	PRI		
Table_name	char(64)	NO	PRI		
Grantor	char(77)	NO	MUL		
Timestamp	timestamp	NO		CURRENT_TIMESTAMP	on update CURRENT_TIMESTAMP
Table_priv	set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter','Create View','Show view','Trigger')	NO			
Column_priv	set('Select','Insert','Update','References')	NO			
use test;
REVOKE ALL PRIVILEGES, GRANT OPTION FROM dummy@localhost;
DROP USER dummy@localhost;
DROP DATABASE mysqltest;
CREATE USER dummy@localhost;
CREATE DATABASE mysqltest;
CREATE TABLE mysqltest.dummytable (dummyfield INT);
CREATE VIEW mysqltest.dummyview AS SELECT dummyfield FROM mysqltest.dummytable;
GRANT CREATE VIEW ON mysqltest.dummytable TO dummy@localhost;
GRANT CREATE VIEW ON mysqltest.dummyview TO dummy@localhost;
SHOW GRANTS FOR dummy@localhost;
Grants for dummy@localhost
GRANT USAGE ON *.* TO 'dummy'@'localhost'
GRANT CREATE VIEW ON `mysqltest`.`dummyview` TO 'dummy'@'localhost'
GRANT CREATE VIEW ON `mysqltest`.`dummytable` TO 'dummy'@'localhost'
use INFORMATION_SCHEMA;
SELECT TABLE_SCHEMA, TABLE_NAME, GROUP_CONCAT(PRIVILEGE_TYPE ORDER BY
PRIVILEGE_TYPE SEPARATOR ', ') AS PRIVILEGES FROM TABLE_PRIVILEGES WHERE GRANTEE
= '\'dummy\'@\'localhost\'' GROUP BY TABLE_SCHEMA, TABLE_NAME;
TABLE_SCHEMA	TABLE_NAME	PRIVILEGES
mysqltest	dummytable	CREATE VIEW
mysqltest	dummyview	CREATE VIEW
FLUSH PRIVILEGES;
SHOW GRANTS FOR dummy@localhost;
Grants for dummy@localhost
GRANT USAGE ON *.* TO 'dummy'@'localhost'
GRANT CREATE VIEW ON `mysqltest`.`dummyview` TO 'dummy'@'localhost'
GRANT CREATE VIEW ON `mysqltest`.`dummytable` TO 'dummy'@'localhost'
SELECT TABLE_SCHEMA, TABLE_NAME, GROUP_CONCAT(PRIVILEGE_TYPE ORDER BY
PRIVILEGE_TYPE SEPARATOR ', ') AS PRIVILEGES FROM TABLE_PRIVILEGES WHERE GRANTEE
= '\'dummy\'@\'localhost\'' GROUP BY TABLE_SCHEMA, TABLE_NAME;
TABLE_SCHEMA	TABLE_NAME	PRIVILEGES
mysqltest	dummytable	CREATE VIEW
mysqltest	dummyview	CREATE VIEW
use test;
REVOKE ALL PRIVILEGES, GRANT OPTION FROM dummy@localhost;
DROP USER dummy@localhost;
DROP DATABASE mysqltest;
CREATE USER dummy@localhost;
CREATE DATABASE mysqltest;
CREATE TABLE mysqltest.dummytable (dummyfield INT);
CREATE VIEW mysqltest.dummyview AS SELECT dummyfield FROM mysqltest.dummytable;
GRANT SHOW VIEW ON mysqltest.dummytable TO dummy@localhost;
GRANT SHOW VIEW ON mysqltest.dummyview TO dummy@localhost;
SHOW GRANTS FOR dummy@localhost;
Grants for dummy@localhost
GRANT USAGE ON *.* TO 'dummy'@'localhost'
GRANT SHOW VIEW ON `mysqltest`.`dummyview` TO 'dummy'@'localhost'
GRANT SHOW VIEW ON `mysqltest`.`dummytable` TO 'dummy'@'localhost'
use INFORMATION_SCHEMA;
SELECT TABLE_SCHEMA, TABLE_NAME, GROUP_CONCAT(PRIVILEGE_TYPE ORDER BY
PRIVILEGE_TYPE SEPARATOR ', ') AS PRIVILEGES FROM TABLE_PRIVILEGES WHERE GRANTEE
= '\'dummy\'@\'localhost\'' GROUP BY TABLE_SCHEMA, TABLE_NAME;
TABLE_SCHEMA	TABLE_NAME	PRIVILEGES
mysqltest	dummytable	SHOW VIEW
mysqltest	dummyview	SHOW VIEW
FLUSH PRIVILEGES;
SHOW GRANTS FOR dummy@localhost;
Grants for dummy@localhost
GRANT USAGE ON *.* TO 'dummy'@'localhost'
GRANT SHOW VIEW ON `mysqltest`.`dummyview` TO 'dummy'@'localhost'
GRANT SHOW VIEW ON `mysqltest`.`dummytable` TO 'dummy'@'localhost'
SELECT TABLE_SCHEMA, TABLE_NAME, GROUP_CONCAT(PRIVILEGE_TYPE ORDER BY
PRIVILEGE_TYPE SEPARATOR ', ') AS PRIVILEGES FROM TABLE_PRIVILEGES WHERE GRANTEE
= '\'dummy\'@\'localhost\'' GROUP BY TABLE_SCHEMA, TABLE_NAME;
TABLE_SCHEMA	TABLE_NAME	PRIVILEGES
mysqltest	dummytable	SHOW VIEW
mysqltest	dummyview	SHOW VIEW
use test;
REVOKE ALL PRIVILEGES, GRANT OPTION FROM dummy@localhost;
DROP USER dummy@localhost;
DROP DATABASE mysqltest;
use mysql;
insert into tables_priv values ('','test_db','mysqltest_1','test_table','test_grantor',CURRENT_TIMESTAMP,'Select','Select');
flush privileges;
delete from tables_priv where host = '' and user = 'mysqltest_1';
flush privileges;
use test;
set @user123="non-existent";
select * from mysql.db where user=@user123;
Host	Db	User	Select_priv	Insert_priv	Update_priv	Delete_priv	Create_priv	Drop_priv	Grant_priv	References_priv	Index_priv	Alter_priv	Create_tmp_table_priv	Lock_tables_priv	Create_view_priv	Show_view_priv	Create_routine_priv	Alter_routine_priv	Execute_priv	Event_priv	Trigger_priv
set names koi8r;
create database ��;
grant select on ��.* to root@localhost;
select hex(Db) from mysql.db where Db='��';
hex(Db)
D0B1D0B4
show grants for root@localhost;
Grants for root@localhost
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION
GRANT SELECT ON `��`.* TO 'root'@'localhost'
GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION
flush privileges;
show grants for root@localhost;
Grants for root@localhost
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION
GRANT SELECT ON `��`.* TO 'root'@'localhost'
GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION
drop database ��;
revoke all privileges on ��.* from root@localhost;
show grants for root@localhost;
Grants for root@localhost
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION
GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION
set names latin1;
create user mysqltest_7@;
set password for mysqltest_7@ = password('systpass');
show grants for mysqltest_7@;
Grants for mysqltest_7@
GRANT USAGE ON *.* TO 'mysqltest_7'@'' IDENTIFIED BY PASSWORD '*2FB071A056F9BB745219D9C876814231DAF46517'
drop user mysqltest_7@;
show grants for mysqltest_7@;
ERROR 42000: There is no such grant defined for user 'mysqltest_7' on host ''
create database mysqltest;
use mysqltest;
create table t1(f1 int);
GRANT DELETE ON mysqltest.t1 TO mysqltest1@'%';
GRANT SELECT ON mysqltest.t1 TO mysqltest1@'192.%';
show grants for mysqltest1@'192.%';
Grants for mysqltest1@192.%
GRANT USAGE ON *.* TO 'mysqltest1'@'192.%'
GRANT SELECT ON `mysqltest`.`t1` TO 'mysqltest1'@'192.%'
show grants for mysqltest1@'%';
Grants for mysqltest1@%
GRANT USAGE ON *.* TO 'mysqltest1'@'%'
GRANT DELETE ON `mysqltest`.`t1` TO 'mysqltest1'@'%'
delete from mysql.user where user='mysqltest1';
delete from mysql.db where user='mysqltest1';
delete from mysql.tables_priv where user='mysqltest1';
flush privileges;
drop database mysqltest;
create database db27515;
use db27515;
create table t1 (a int);
grant alter on db27515.t1 to user27515@localhost;
grant insert, create on db27515.t2 to user27515@localhost;
rename table t1 to t2;
ERROR 42000: DROP command denied to user 'user27515'@'localhost' for table 't1'
revoke all privileges, grant option from user27515@localhost;
drop user user27515@localhost;
drop database db27515;
End of 4.1 tests
use test;
create table t1 (a int);
create table t2 as select * from mysql.user where user='';
delete from mysql.user where user='';
flush privileges;
create user mysqltest_8@'';
create user mysqltest_8;
create user mysqltest_8@host8;
create user mysqltest_8@'';
ERROR HY000: Operation CREATE USER failed for 'mysqltest_8'@''
create user mysqltest_8;
ERROR HY000: Operation CREATE USER failed for 'mysqltest_8'@'%'
create user mysqltest_8@host8;
ERROR HY000: Operation CREATE USER failed for 'mysqltest_8'@'host8'
select user, QUOTE(host) from mysql.user where user="mysqltest_8";
user	QUOTE(host)
mysqltest_8	''
mysqltest_8	'%'
mysqltest_8	'host8'
Schema privileges
grant select on mysqltest.* to mysqltest_8@'';
show grants for mysqltest_8@'';
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
GRANT SELECT ON `mysqltest`.* TO 'mysqltest_8'@''
grant select on mysqltest.* to mysqltest_8@;
show grants for mysqltest_8@;
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
GRANT SELECT ON `mysqltest`.* TO 'mysqltest_8'@''
grant select on mysqltest.* to mysqltest_8;
show grants for mysqltest_8;
Grants for mysqltest_8@%
GRANT USAGE ON *.* TO 'mysqltest_8'@'%'
GRANT SELECT ON `mysqltest`.* TO 'mysqltest_8'@'%'
select * from  information_schema.schema_privileges
where grantee like "'mysqltest_8'%";
GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	PRIVILEGE_TYPE	IS_GRANTABLE
'mysqltest_8'@'%'	def	mysqltest	SELECT	NO
'mysqltest_8'@''	def	mysqltest	SELECT	NO
select * from t1;
a
revoke select on mysqltest.* from mysqltest_8@'';
revoke select on mysqltest.* from mysqltest_8;
show grants for mysqltest_8@'';
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
show grants for mysqltest_8;
Grants for mysqltest_8@%
GRANT USAGE ON *.* TO 'mysqltest_8'@'%'
select * from  information_schema.schema_privileges
where grantee like "'mysqltest_8'%";
GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	PRIVILEGE_TYPE	IS_GRANTABLE
flush privileges;
show grants for mysqltest_8@'';
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
show grants for mysqltest_8@;
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
grant select on mysqltest.* to mysqltest_8@'';
flush privileges;
show grants for mysqltest_8@;
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
GRANT SELECT ON `mysqltest`.* TO 'mysqltest_8'@''
revoke select on mysqltest.* from mysqltest_8@'';
flush privileges;
Column privileges
grant update (a) on t1 to mysqltest_8@'';
grant update (a) on t1 to mysqltest_8;
show grants for mysqltest_8@'';
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
GRANT UPDATE (a) ON `test`.`t1` TO 'mysqltest_8'@''
show grants for mysqltest_8;
Grants for mysqltest_8@%
GRANT USAGE ON *.* TO 'mysqltest_8'@'%'
GRANT UPDATE (a) ON `test`.`t1` TO 'mysqltest_8'@'%'
flush privileges;
show grants for mysqltest_8@'';
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
GRANT UPDATE (a) ON `test`.`t1` TO 'mysqltest_8'@''
show grants for mysqltest_8;
Grants for mysqltest_8@%
GRANT USAGE ON *.* TO 'mysqltest_8'@'%'
GRANT UPDATE (a) ON `test`.`t1` TO 'mysqltest_8'@'%'
select * from  information_schema.column_privileges;
GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	PRIVILEGE_TYPE	IS_GRANTABLE
'mysqltest_8'@'%'	def	test	t1	a	UPDATE	NO
'mysqltest_8'@''	def	test	t1	a	UPDATE	NO
select * from t1;
a
revoke update (a) on t1 from mysqltest_8@'';
revoke update (a) on t1 from mysqltest_8;
show grants for mysqltest_8@'';
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
show grants for mysqltest_8;
Grants for mysqltest_8@%
GRANT USAGE ON *.* TO 'mysqltest_8'@'%'
select * from  information_schema.column_privileges;
GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	PRIVILEGE_TYPE	IS_GRANTABLE
flush privileges;
show grants for mysqltest_8@'';
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
show grants for mysqltest_8;
Grants for mysqltest_8@%
GRANT USAGE ON *.* TO 'mysqltest_8'@'%'
Table privileges
grant update on t1 to mysqltest_8@'';
grant update on t1 to mysqltest_8;
show grants for mysqltest_8@'';
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
GRANT UPDATE ON `test`.`t1` TO 'mysqltest_8'@''
show grants for mysqltest_8;
Grants for mysqltest_8@%
GRANT USAGE ON *.* TO 'mysqltest_8'@'%'
GRANT UPDATE ON `test`.`t1` TO 'mysqltest_8'@'%'
flush privileges;
show grants for mysqltest_8@'';
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
GRANT UPDATE ON `test`.`t1` TO 'mysqltest_8'@''
show grants for mysqltest_8;
Grants for mysqltest_8@%
GRANT USAGE ON *.* TO 'mysqltest_8'@'%'
GRANT UPDATE ON `test`.`t1` TO 'mysqltest_8'@'%'
select * from  information_schema.table_privileges;
GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	PRIVILEGE_TYPE	IS_GRANTABLE
'mysqltest_8'@'%'	def	test	t1	UPDATE	NO
'mysqltest_8'@''	def	test	t1	UPDATE	NO
select * from t1;
a
revoke update on t1 from mysqltest_8@'';
revoke update on t1 from mysqltest_8;
show grants for mysqltest_8@'';
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
show grants for mysqltest_8;
Grants for mysqltest_8@%
GRANT USAGE ON *.* TO 'mysqltest_8'@'%'
select * from  information_schema.table_privileges;
GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	PRIVILEGE_TYPE	IS_GRANTABLE
flush privileges;
show grants for mysqltest_8@'';
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
show grants for mysqltest_8;
Grants for mysqltest_8@%
GRANT USAGE ON *.* TO 'mysqltest_8'@'%'
"DROP USER" should clear privileges
grant all privileges on mysqltest.* to mysqltest_8@'';
grant select on mysqltest.* to mysqltest_8@'';
grant update on t1 to mysqltest_8@'';
grant update (a) on t1 to mysqltest_8@'';
grant all privileges on mysqltest.* to mysqltest_8;
show grants for mysqltest_8@'';
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_8'@''
GRANT UPDATE, UPDATE (a) ON `test`.`t1` TO 'mysqltest_8'@''
show grants for mysqltest_8;
Grants for mysqltest_8@%
GRANT USAGE ON *.* TO 'mysqltest_8'@'%'
GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_8'@'%'
select * from  information_schema.user_privileges
where grantee like "'mysqltest_8'%";
GRANTEE	TABLE_CATALOG	PRIVILEGE_TYPE	IS_GRANTABLE
'mysqltest_8'@'host8'	def	USAGE	NO
'mysqltest_8'@'%'	def	USAGE	NO
'mysqltest_8'@''	def	USAGE	NO
select * from t1;
a
flush privileges;
show grants for mysqltest_8@'';
Grants for mysqltest_8@
GRANT USAGE ON *.* TO 'mysqltest_8'@''
GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_8'@''
GRANT UPDATE, UPDATE (a) ON `test`.`t1` TO 'mysqltest_8'@''
show grants for mysqltest_8;
Grants for mysqltest_8@%
GRANT USAGE ON *.* TO 'mysqltest_8'@'%'
GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_8'@'%'
drop user mysqltest_8@'';
show grants for mysqltest_8@'';
ERROR 42000: There is no such grant defined for user 'mysqltest_8' on host ''
show grants for mysqltest_8;
Grants for mysqltest_8@%
GRANT USAGE ON *.* TO 'mysqltest_8'@'%'
GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_8'@'%'
select * from  information_schema.user_privileges
where grantee like "'mysqltest_8'%";
GRANTEE	TABLE_CATALOG	PRIVILEGE_TYPE	IS_GRANTABLE
'mysqltest_8'@'host8'	def	USAGE	NO
'mysqltest_8'@'%'	def	USAGE	NO
drop user mysqltest_8;
connect(localhost,mysqltest_8,,test,MASTER_PORT,MASTER_SOCKET);
ERROR 28000: Access denied for user 'mysqltest_8'@'localhost' (using password: NO)
show grants for mysqltest_8;
ERROR 42000: There is no such grant defined for user 'mysqltest_8' on host '%'
drop user mysqltest_8@host8;
show grants for mysqltest_8@host8;
ERROR 42000: There is no such grant defined for user 'mysqltest_8' on host 'host8'
insert into mysql.user select * from t2;
flush privileges;
drop table t2;
drop table t1;
CREATE DATABASE mysqltest3;
USE mysqltest3;
CREATE TABLE t_nn (c1 INT);
CREATE VIEW  v_nn AS SELECT * FROM t_nn;
CREATE DATABASE mysqltest2;
USE mysqltest2;
CREATE TABLE t_nn (c1 INT);
CREATE VIEW  v_nn AS SELECT * FROM t_nn;
CREATE VIEW  v_yn AS SELECT * FROM t_nn;
CREATE VIEW  v_gy AS SELECT * FROM t_nn;
CREATE VIEW  v_ny AS SELECT * FROM t_nn;
CREATE VIEW  v_yy AS SELECT * FROM t_nn WHERE c1=55;
GRANT SHOW VIEW        ON mysqltest2.v_ny TO 'mysqltest_1'@'localhost' IDENTIFIED BY 'mysqltest_1';
GRANT SELECT           ON mysqltest2.v_yn TO 'mysqltest_1'@'localhost' IDENTIFIED BY 'mysqltest_1';
GRANT SELECT           ON mysqltest2.*    TO 'mysqltest_1'@'localhost' IDENTIFIED BY 'mysqltest_1';
GRANT SHOW VIEW,SELECT ON mysqltest2.v_yy TO 'mysqltest_1'@'localhost' IDENTIFIED BY 'mysqltest_1';
SHOW CREATE VIEW  mysqltest2.v_nn;
ERROR 42000: SHOW VIEW command denied to user 'mysqltest_1'@'localhost' for table 'v_nn'
SHOW CREATE TABLE mysqltest2.v_nn;
ERROR 42000: SHOW VIEW command denied to user 'mysqltest_1'@'localhost' for table 'v_nn'
SHOW CREATE VIEW  mysqltest2.v_yn;
ERROR 42000: SHOW VIEW command denied to user 'mysqltest_1'@'localhost' for table 'v_yn'
SHOW CREATE TABLE mysqltest2.v_yn;
ERROR 42000: SHOW VIEW command denied to user 'mysqltest_1'@'localhost' for table 'v_yn'
SHOW CREATE TABLE mysqltest2.v_ny;
View	Create View	character_set_client	collation_connection
v_ny	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest2`.`v_ny` AS select `mysqltest2`.`t_nn`.`c1` AS `c1` from `mysqltest2`.`t_nn`	latin1	latin1_swedish_ci
SHOW CREATE VIEW  mysqltest2.v_ny;
View	Create View	character_set_client	collation_connection
v_ny	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest2`.`v_ny` AS select `mysqltest2`.`t_nn`.`c1` AS `c1` from `mysqltest2`.`t_nn`	latin1	latin1_swedish_ci
SHOW CREATE TABLE mysqltest3.t_nn;
ERROR 42000: SHOW command denied to user 'mysqltest_1'@'localhost' for table 't_nn'
SHOW CREATE VIEW  mysqltest3.t_nn;
ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for table 't_nn'
SHOW CREATE VIEW  mysqltest3.v_nn;
ERROR 42000: SELECT command denied to user 'mysqltest_1'@'localhost' for table 'v_nn'
SHOW CREATE TABLE mysqltest3.v_nn;
ERROR 42000: SHOW command denied to user 'mysqltest_1'@'localhost' for table 'v_nn'
SHOW CREATE TABLE mysqltest2.t_nn;
Table	Create Table
t_nn	CREATE TABLE `t_nn` (
  `c1` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SHOW CREATE VIEW  mysqltest2.t_nn;
ERROR HY000: 'mysqltest2.t_nn' is not VIEW
SHOW CREATE VIEW mysqltest2.v_yy;
View	Create View	character_set_client	collation_connection
v_yy	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest2`.`v_yy` AS select `mysqltest2`.`t_nn`.`c1` AS `c1` from `mysqltest2`.`t_nn` where (`mysqltest2`.`t_nn`.`c1` = 55)	latin1	latin1_swedish_ci
SHOW CREATE TABLE mysqltest2.v_yy;
View	Create View	character_set_client	collation_connection
v_yy	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `mysqltest2`.`v_yy` AS select `mysqltest2`.`t_nn`.`c1` AS `c1` from `mysqltest2`.`t_nn` where (`mysqltest2`.`t_nn`.`c1` = 55)	latin1	latin1_swedish_ci
SHOW CREATE TABLE mysqltest2.v_nn;
View	Create View	character_set_client	collation_connection
v_nn	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v_nn` AS select `t_nn`.`c1` AS `c1` from `t_nn`	latin1	latin1_swedish_ci
SHOW CREATE VIEW  mysqltest2.v_nn;
View	Create View	character_set_client	collation_connection
v_nn	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v_nn` AS select `t_nn`.`c1` AS `c1` from `t_nn`	latin1	latin1_swedish_ci
SHOW CREATE TABLE mysqltest2.t_nn;
Table	Create Table
t_nn	CREATE TABLE `t_nn` (
  `c1` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SHOW CREATE VIEW mysqltest2.t_nn;
ERROR HY000: 'mysqltest2.t_nn' is not VIEW
DROP VIEW  mysqltest2.v_nn;
DROP VIEW  mysqltest2.v_yn;
DROP VIEW  mysqltest2.v_ny;
DROP VIEW  mysqltest2.v_yy;
DROP TABLE mysqltest2.t_nn;
DROP DATABASE mysqltest2;
DROP VIEW  mysqltest3.v_nn;
DROP TABLE mysqltest3.t_nn;
DROP DATABASE mysqltest3;
REVOKE ALL PRIVILEGES, GRANT OPTION FROM 'mysqltest_1'@'localhost';
DROP USER 'mysqltest_1'@'localhost';
USE test;
create user mysqltest1_thisisreallytoolong;
ERROR HY000: String 'mysqltest1_thisisreallytoolong' is too long for user name (should be no longer than 16)
CREATE DATABASE mysqltest1;
CREATE TABLE mysqltest1.t1 (
int_field INTEGER UNSIGNED NOT NULL,
char_field CHAR(10),
INDEX(`int_field`)
);
CREATE TABLE mysqltest1.t2 (int_field INT);
"Now check that we require equivalent grants for "
"RENAME TABLE and ALTER TABLE"
CREATE USER mysqltest_1@localhost;
GRANT SELECT ON mysqltest1.t1 TO mysqltest_1@localhost;
SELECT USER();
USER()
mysqltest_1@localhost
SHOW GRANTS;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT SELECT ON `mysqltest1`.`t1` TO 'mysqltest_1'@'localhost'
RENAME TABLE t1 TO t2;
ERROR 42000: DROP, ALTER command denied to user 'mysqltest_1'@'localhost' for table 't1'
ALTER TABLE t1 RENAME TO t2;
ERROR 42000: DROP, ALTER command denied to user 'mysqltest_1'@'localhost' for table 't1'
GRANT DROP ON mysqltest1.t1 TO mysqltest_1@localhost;
RENAME TABLE t1 TO t2;
ERROR 42000: ALTER command denied to user 'mysqltest_1'@'localhost' for table 't1'
ALTER TABLE t1 RENAME TO t2;
ERROR 42000: ALTER command denied to user 'mysqltest_1'@'localhost' for table 't1'
GRANT ALTER ON mysqltest1.t1 TO mysqltest_1@localhost;
SHOW GRANTS;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT SELECT, DROP, ALTER ON `mysqltest1`.`t1` TO 'mysqltest_1'@'localhost'
RENAME TABLE t1 TO t2;
ERROR 42000: INSERT, CREATE command denied to user 'mysqltest_1'@'localhost' for table 't2'
ALTER TABLE t1 RENAME TO t2;
ERROR 42000: INSERT, CREATE command denied to user 'mysqltest_1'@'localhost' for table 't2'
GRANT INSERT, CREATE ON mysqltest1.t1 TO mysqltest_1@localhost;
SHOW GRANTS;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT SELECT, INSERT, CREATE, DROP, ALTER ON `mysqltest1`.`t1` TO 'mysqltest_1'@'localhost'
GRANT INSERT, SELECT, CREATE, ALTER, DROP ON mysqltest1.t2 TO mysqltest_1@localhost;
DROP TABLE mysqltest1.t2;
SHOW GRANTS;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT SELECT, INSERT, CREATE, DROP, ALTER ON `mysqltest1`.`t1` TO 'mysqltest_1'@'localhost'
GRANT SELECT, INSERT, CREATE, DROP, ALTER ON `mysqltest1`.`t2` TO 'mysqltest_1'@'localhost'
RENAME TABLE t1 TO t2;
RENAME TABLE t2 TO t1;
ALTER TABLE t1 RENAME TO t2;
ALTER TABLE t2 RENAME TO t1;
REVOKE DROP, INSERT ON mysqltest1.t1 FROM mysqltest_1@localhost;
REVOKE DROP, INSERT ON mysqltest1.t2 FROM mysqltest_1@localhost;
SHOW GRANTS;
Grants for mysqltest_1@localhost
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
GRANT SELECT, CREATE, ALTER ON `mysqltest1`.`t1` TO 'mysqltest_1'@'localhost'
GRANT SELECT, CREATE, ALTER ON `mysqltest1`.`t2` TO 'mysqltest_1'@'localhost'
RENAME TABLE t1 TO t2;
ERROR 42000: DROP command denied to user 'mysqltest_1'@'localhost' for table 't1'
ALTER TABLE t1 RENAME TO t2;
ERROR 42000: DROP command denied to user 'mysqltest_1'@'localhost' for table 't1'
DROP USER mysqltest_1@localhost;
DROP DATABASE mysqltest1;
USE test;
GRANT CREATE ON mysqltest.* TO 1234567890abcdefGHIKL@localhost;
ERROR HY000: String '1234567890abcdefGHIKL' is too long for user name (should be no longer than 16)
GRANT CREATE ON mysqltest.* TO some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY;
ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60)
REVOKE CREATE ON mysqltest.* FROM 1234567890abcdefGHIKL@localhost;
ERROR HY000: String '1234567890abcdefGHIKL' is too long for user name (should be no longer than 16)
REVOKE CREATE ON mysqltest.* FROM some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY;
ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60)
GRANT CREATE ON t1 TO 1234567890abcdefGHIKL@localhost;
ERROR HY000: String '1234567890abcdefGHIKL' is too long for user name (should be no longer than 16)
GRANT CREATE ON t1 TO some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY;
ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60)
REVOKE CREATE ON t1 FROM 1234567890abcdefGHIKL@localhost;
ERROR HY000: String '1234567890abcdefGHIKL' is too long for user name (should be no longer than 16)
REVOKE CREATE ON t1 FROM some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY;
ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60)
GRANT EXECUTE ON PROCEDURE p1 TO 1234567890abcdefGHIKL@localhost;
ERROR HY000: String '1234567890abcdefGHIKL' is too long for user name (should be no longer than 16)
GRANT EXECUTE ON PROCEDURE p1 TO some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY;
ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60)
REVOKE EXECUTE ON PROCEDURE p1 FROM 1234567890abcdefGHIKL@localhost;
ERROR HY000: String '1234567890abcdefGHIKL' is too long for user name (should be no longer than 16)
REVOKE EXECUTE ON PROCEDURE t1 FROM some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY;
ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60)
CREATE USER bug23556@localhost;
CREATE DATABASE bug23556;
GRANT SELECT ON bug23556.* TO bug23556@localhost;
USE bug23556;
CREATE TABLE t1 (a INT PRIMARY KEY);
INSERT INTO t1 VALUES (1),(2),(3),(4),(5);
GRANT DELETE ON t1 TO bug23556@localhost;
USE bug23556;
TRUNCATE t1;
ERROR 42000: DROP command denied to user 'bug23556'@'localhost' for table 't1'
USE bug23556;
REVOKE DELETE ON t1 FROM bug23556@localhost;
GRANT DROP ON t1 TO bug23556@localhost;
USE bug23556;
TRUNCATE t1;
USE bug23556;
DROP TABLE t1;
USE test;
DROP DATABASE bug23556;
DROP USER bug23556@localhost;
GRANT PROCESS ON * TO user@localhost;
ERROR 3D000: No database selected
DROP DATABASE IF EXISTS mysqltest1;
DROP DATABASE IF EXISTS mysqltest2;
DROP DATABASE IF EXISTS mysqltest3;
DROP DATABASE IF EXISTS mysqltest4;
CREATE DATABASE mysqltest1;
CREATE DATABASE mysqltest2;
CREATE DATABASE mysqltest3;
CREATE DATABASE mysqltest4;
CREATE PROCEDURE mysqltest1.p_def() SQL SECURITY DEFINER
SELECT 1;
CREATE PROCEDURE mysqltest2.p_inv() SQL SECURITY INVOKER
SELECT 1;
CREATE FUNCTION mysqltest3.f_def() RETURNS INT SQL SECURITY DEFINER
RETURN 1;
CREATE FUNCTION mysqltest4.f_inv() RETURNS INT SQL SECURITY INVOKER
RETURN 1;
GRANT EXECUTE ON PROCEDURE mysqltest1.p_def TO mysqltest_1@localhost;
GRANT EXECUTE ON PROCEDURE mysqltest2.p_inv TO mysqltest_1@localhost;
GRANT EXECUTE ON FUNCTION mysqltest3.f_def TO mysqltest_1@localhost;
GRANT EXECUTE ON FUNCTION mysqltest4.f_inv TO mysqltest_1@localhost;
GRANT ALL PRIVILEGES ON test.* TO mysqltest_1@localhost;

---> connection: bug9504_con1
use mysqltest1;
use mysqltest2;
use mysqltest3;
use mysqltest4;
use test;
CALL mysqltest1.p_def();
1
1
CALL mysqltest2.p_inv();
1
1
SELECT mysqltest3.f_def();
mysqltest3.f_def()
1
SELECT mysqltest4.f_inv();
mysqltest4.f_inv()
1

---> connection: default
DROP DATABASE mysqltest1;
DROP DATABASE mysqltest2;
DROP DATABASE mysqltest3;
DROP DATABASE mysqltest4;
DROP USER mysqltest_1@localhost;
DROP DATABASE IF EXISTS mysqltest1;
DROP DATABASE IF EXISTS mysqltest2;
CREATE DATABASE mysqltest1;
CREATE DATABASE mysqltest2;
GRANT ALL PRIVILEGES ON mysqltest1.* TO mysqltest_1@localhost;
GRANT SELECT ON mysqltest2.* TO mysqltest_1@localhost;
CREATE PROCEDURE mysqltest1.p1() SQL SECURITY INVOKER
SELECT 1;

---> connection: bug27337_con1
CREATE TABLE t1(c INT);
ERROR 42000: CREATE command denied to user 'mysqltest_1'@'localhost' for table 't1'
CALL mysqltest1.p1();
1
1
CREATE TABLE t1(c INT);
ERROR 42000: CREATE command denied to user 'mysqltest_1'@'localhost' for table 't1'

---> connection: bug27337_con2
CREATE TABLE t1(c INT);
ERROR 42000: CREATE command denied to user 'mysqltest_1'@'localhost' for table 't1'
SHOW TABLES;
Tables_in_mysqltest2

---> connection: default
DROP DATABASE mysqltest1;
DROP DATABASE mysqltest2;
DROP USER mysqltest_1@localhost;
DROP DATABASE IF EXISTS mysqltest1;
DROP DATABASE IF EXISTS mysqltest2;
CREATE DATABASE mysqltest1;
CREATE DATABASE mysqltest2;
CREATE TABLE mysqltest1.t1(c INT);
CREATE TABLE mysqltest2.t2(c INT);
GRANT SELECT ON mysqltest1.t1 TO mysqltest_1@localhost;
GRANT SELECT ON mysqltest2.t2 TO mysqltest_2@localhost;

---> connection: bug27337_con1
SHOW TABLES FROM mysqltest1;
Tables_in_mysqltest1
t1
PREPARE stmt1 FROM 'SHOW TABLES FROM mysqltest1';
EXECUTE stmt1;
Tables_in_mysqltest1
t1

---> connection: bug27337_con2
SHOW COLUMNS FROM mysqltest2.t2;
Field	Type	Null	Key	Default	Extra
c	int(11)	YES		NULL	
PREPARE stmt2 FROM 'SHOW COLUMNS FROM mysqltest2.t2';
EXECUTE stmt2;
Field	Type	Null	Key	Default	Extra
c	int(11)	YES		NULL	

---> connection: default
REVOKE SELECT ON mysqltest1.t1 FROM mysqltest_1@localhost;
REVOKE SELECT ON mysqltest2.t2 FROM mysqltest_2@localhost;

---> connection: bug27337_con1
SHOW TABLES FROM mysqltest1;
ERROR 42000: Access denied for user 'mysqltest_1'@'localhost' to database 'mysqltest1'
EXECUTE stmt1;
ERROR 42000: Access denied for user 'mysqltest_1'@'localhost' to database 'mysqltest1'

---> connection: bug27337_con2
SHOW COLUMNS FROM mysqltest2.t2;
ERROR 42000: SELECT command denied to user 'mysqltest_2'@'localhost' for table 't2'
EXECUTE stmt2;
ERROR 42000: SELECT command denied to user 'mysqltest_2'@'localhost' for table 't2'

---> connection: default
DROP DATABASE mysqltest1;
DROP DATABASE mysqltest2;
DROP USER mysqltest_1@localhost;
DROP USER mysqltest_2@localhost;
USE test;
CREATE TABLE t1 (f1 int, f2 int);
INSERT INTO t1 VALUES(1,1), (2,2);
CREATE DATABASE db27878;
GRANT UPDATE(f1) ON t1 TO 'mysqltest_1'@'localhost';
GRANT SELECT ON `test`.* TO 'mysqltest_1'@'localhost';
GRANT ALL ON db27878.* TO 'mysqltest_1'@'localhost';
USE db27878;
CREATE SQL SECURITY INVOKER VIEW db27878.v1 AS SELECT * FROM test.t1;
USE db27878;
UPDATE v1 SET f2 = 4;
ERROR HY000: View 'db27878.v1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
SELECT * FROM test.t1;
f1	f2
1	1
2	2
REVOKE UPDATE (f1) ON `test`.`t1` FROM 'mysqltest_1'@'localhost';
REVOKE SELECT ON `test`.* FROM 'mysqltest_1'@'localhost';
REVOKE ALL ON db27878.* FROM 'mysqltest_1'@'localhost';
DROP USER mysqltest_1@localhost;
DROP DATABASE db27878;
USE test;
DROP TABLE t1;
#
#  Bug#33275 Server crash when creating temporary table mysql.user
#
CREATE TEMPORARY TABLE mysql.user (id INT);
FLUSH PRIVILEGES;
DROP TABLE mysql.user;
drop table if exists test;
Warnings:
Note	1051	Unknown table 'test.test'
drop function if exists test_function;
Warnings:
Note	1305	FUNCTION test.test_function does not exist
drop view if exists v1;
Warnings:
Note	1051	Unknown table 'test.v1'
create table test (col1 varchar(30));
create function test_function() returns varchar(30)
begin
declare tmp varchar(30);
select col1 from test limit 1 into tmp;
return '1';
end|
create view v1 as select test.* from test where test.col1=test_function();
grant update (col1) on v1 to 'greg'@'localhost';
drop user 'greg'@'localhost';
drop view v1;
drop table test;
drop function test_function;
SELECT CURRENT_USER();
CURRENT_USER()
root@localhost
SET PASSWORD FOR CURRENT_USER() = PASSWORD("admin");
SET PASSWORD FOR CURRENT_USER() = PASSWORD("");

# Bug#57952

DROP DATABASE IF EXISTS mysqltest1;
DROP DATABASE IF EXISTS mysqltest2;
CREATE DATABASE mysqltest1;
CREATE DATABASE mysqltest2;
use mysqltest1;
CREATE TABLE t1(a INT, b INT);
INSERT INTO t1 VALUES (1, 1);
CREATE TABLE t2(a INT);
INSERT INTO t2 VALUES (2);
CREATE TABLE mysqltest2.t3(a INT);
INSERT INTO mysqltest2.t3 VALUES (4);
CREATE USER testuser@localhost;
GRANT CREATE ROUTINE, EXECUTE ON mysqltest1.* TO testuser@localhost;
GRANT SELECT(b) ON t1 TO testuser@localhost;
GRANT SELECT    ON t2 TO testuser@localhost;
GRANT SELECT    ON mysqltest2.* TO testuser@localhost;

# Connection: bug57952_con1 (testuser@localhost, db: mysqltest1)
PREPARE s1 FROM 'SELECT b FROM t1';
PREPARE s2 FROM 'SELECT a FROM t2';
PREPARE s3 FROM 'SHOW TABLES FROM mysqltest2';
CREATE PROCEDURE p1() SELECT b FROM t1;
CREATE PROCEDURE p2() SELECT a FROM t2;
CREATE PROCEDURE p3() SHOW TABLES FROM mysqltest2;
CALL p1;
b
1
CALL p2;
a
2
CALL p3;
Tables_in_mysqltest2
t3

# Connection: default
REVOKE SELECT ON t1 FROM testuser@localhost;
GRANT SELECT(a) ON t1 TO testuser@localhost;
REVOKE SELECT ON t2 FROM testuser@localhost;
REVOKE SELECT ON mysqltest2.* FROM testuser@localhost;

# Connection: bug57952_con1 (testuser@localhost, db: mysqltest1)
#   - Check column-level privileges...
EXECUTE s1;
ERROR 42000: SELECT command denied to user 'testuser'@'localhost' for column 'b' in table 't1'
SELECT b FROM t1;
ERROR 42000: SELECT command denied to user 'testuser'@'localhost' for column 'b' in table 't1'
EXECUTE s1;
ERROR 42000: SELECT command denied to user 'testuser'@'localhost' for column 'b' in table 't1'
CALL p1;
ERROR 42000: SELECT command denied to user 'testuser'@'localhost' for column 'b' in table 't1'
#   - Check table-level privileges...
SELECT a FROM t2;
ERROR 42000: SELECT command denied to user 'testuser'@'localhost' for table 't2'
EXECUTE s2;
ERROR 42000: SELECT command denied to user 'testuser'@'localhost' for table 't2'
CALL p2;
ERROR 42000: SELECT command denied to user 'testuser'@'localhost' for table 't2'
#   - Check database-level privileges...
SHOW TABLES FROM mysqltest2;
ERROR 42000: Access denied for user 'testuser'@'localhost' to database 'mysqltest2'
EXECUTE s3;
ERROR 42000: Access denied for user 'testuser'@'localhost' to database 'mysqltest2'
CALL p3;
ERROR 42000: Access denied for user 'testuser'@'localhost' to database 'mysqltest2'

# Connection: default
DROP DATABASE mysqltest1;
DROP DATABASE mysqltest2;
DROP USER testuser@localhost;
use test;

#
# Test for bug #36544 "DROP USER does not remove stored function
#                      privileges".
#
create database mysqltest1;
create function mysqltest1.f1() returns int return 0;
create procedure mysqltest1.p1() begin end;
#
# 1) Check that DROP USER properly removes privileges on both
#    stored procedures and functions.
#
create user mysqluser1@localhost;
grant execute on function mysqltest1.f1 to mysqluser1@localhost;
grant execute on procedure mysqltest1.p1 to mysqluser1@localhost;
# Quick test that granted privileges are properly reflected
# in privilege tables and in in-memory structures.
show grants for mysqluser1@localhost;
Grants for mysqluser1@localhost
GRANT USAGE ON *.* TO 'mysqluser1'@'localhost'
GRANT EXECUTE ON PROCEDURE `mysqltest1`.`p1` TO 'mysqluser1'@'localhost'
GRANT EXECUTE ON FUNCTION `mysqltest1`.`f1` TO 'mysqluser1'@'localhost'
select db, routine_name, routine_type, proc_priv from mysql.procs_priv where user='mysqluser1' and host='localhost';
db	routine_name	routine_type	proc_priv
mysqltest1	f1	FUNCTION	Execute
mysqltest1	p1	PROCEDURE	Execute
#
# Create connection 'bug_36544_con1' as 'mysqluser1@localhost'.
call mysqltest1.p1();
select mysqltest1.f1();
mysqltest1.f1()
0
#
# Switch to connection 'default'.
drop user mysqluser1@localhost;
#
# Test that dropping of user is properly reflected in
# both privilege tables and in in-memory structures.
#
# Switch to connection 'bug36544_con1'.
# The connection cold be alive but should not be able to
# access to any of the stored routines.
call mysqltest1.p1();
ERROR 42000: execute command denied to user 'mysqluser1'@'localhost' for routine 'mysqltest1.p1'
select mysqltest1.f1();
ERROR 42000: execute command denied to user 'mysqluser1'@'localhost' for routine 'mysqltest1.f1'
#
# Switch to connection 'default'.
#
# Now create user with the same name and check that he
# has not inherited privileges.
create user mysqluser1@localhost;
show grants for mysqluser1@localhost;
Grants for mysqluser1@localhost
GRANT USAGE ON *.* TO 'mysqluser1'@'localhost'
select db, routine_name, routine_type, proc_priv from mysql.procs_priv where user='mysqluser1' and host='localhost';
db	routine_name	routine_type	proc_priv
#
# Create connection 'bug_36544_con2' as 'mysqluser1@localhost'.
# Newly created user should not be able to access any of the routines.
call mysqltest1.p1();
ERROR 42000: execute command denied to user 'mysqluser1'@'localhost' for routine 'mysqltest1.p1'
select mysqltest1.f1();
ERROR 42000: execute command denied to user 'mysqluser1'@'localhost' for routine 'mysqltest1.f1'
#
# Switch to connection 'default'.
#
# 2) Check that RENAME USER properly updates privileges on both
#    stored procedures and functions.
#
grant execute on function mysqltest1.f1 to mysqluser1@localhost;
grant execute on procedure mysqltest1.p1 to mysqluser1@localhost;
#
# Create one more user to make in-memory hashes non-trivial.
# User names 'mysqluser11' and 'mysqluser10' were selected
# to trigger bug discovered during code inspection.
create user mysqluser11@localhost;
grant execute on function mysqltest1.f1 to mysqluser11@localhost;
grant execute on procedure mysqltest1.p1 to mysqluser11@localhost;
# Also create a couple of tables to test for another bug
# discovered during code inspection (again table names were
# chosen especially to trigger the bug).
create table mysqltest1.t11 (i int);
create table mysqltest1.t22 (i int);
grant select on mysqltest1.t22 to mysqluser1@localhost;
grant select on mysqltest1.t11 to mysqluser1@localhost;
# Quick test that granted privileges are properly reflected
# in privilege tables and in in-memory structures.
show grants for mysqluser1@localhost;
Grants for mysqluser1@localhost
GRANT USAGE ON *.* TO 'mysqluser1'@'localhost'
GRANT SELECT ON `mysqltest1`.`t11` TO 'mysqluser1'@'localhost'
GRANT SELECT ON `mysqltest1`.`t22` TO 'mysqluser1'@'localhost'
GRANT EXECUTE ON PROCEDURE `mysqltest1`.`p1` TO 'mysqluser1'@'localhost'
GRANT EXECUTE ON FUNCTION `mysqltest1`.`f1` TO 'mysqluser1'@'localhost'
select db, routine_name, routine_type, proc_priv from mysql.procs_priv where user='mysqluser1' and host='localhost';
db	routine_name	routine_type	proc_priv
mysqltest1	f1	FUNCTION	Execute
mysqltest1	p1	PROCEDURE	Execute
select db, table_name, table_priv from mysql.tables_priv where user='mysqluser1' and host='localhost';
db	table_name	table_priv
mysqltest1	t11	Select
mysqltest1	t22	Select
#
# Switch to connection 'bug36544_con2'.
call mysqltest1.p1();
select mysqltest1.f1();
mysqltest1.f1()
0
select * from mysqltest1.t11;
i
select * from mysqltest1.t22;
i
#
# Switch to connection 'default'.
rename user mysqluser1@localhost to mysqluser10@localhost;
#
# Test that there are no privileges left for mysqluser1.
#
# Switch to connection 'bug36544_con2'.
# The connection cold be alive but should not be able to
# access to any of the stored routines or tables.
call mysqltest1.p1();
ERROR 42000: execute command denied to user 'mysqluser1'@'localhost' for routine 'mysqltest1.p1'
select mysqltest1.f1();
ERROR 42000: execute command denied to user 'mysqluser1'@'localhost' for routine 'mysqltest1.f1'
select * from mysqltest1.t11;
ERROR 42000: SELECT command denied to user 'mysqluser1'@'localhost' for table 't11'
select * from mysqltest1.t22;
ERROR 42000: SELECT command denied to user 'mysqluser1'@'localhost' for table 't22'
#
# Switch to connection 'default'.
#
# Now create user with the old name and check that he
# has not inherited privileges.
create user mysqluser1@localhost;
show grants for mysqluser1@localhost;
Grants for mysqluser1@localhost
GRANT USAGE ON *.* TO 'mysqluser1'@'localhost'
select db, routine_name, routine_type, proc_priv from mysql.procs_priv where user='mysqluser1' and host='localhost';
db	routine_name	routine_type	proc_priv
select db, table_name, table_priv from mysql.tables_priv where user='mysqluser1' and host='localhost';
db	table_name	table_priv
#
# Create connection 'bug_36544_con3' as 'mysqluser1@localhost'.
# Newly created user should not be able to access to any of the
# stored routines or tables.
call mysqltest1.p1();
ERROR 42000: execute command denied to user 'mysqluser1'@'localhost' for routine 'mysqltest1.p1'
select mysqltest1.f1();
ERROR 42000: execute command denied to user 'mysqluser1'@'localhost' for routine 'mysqltest1.f1'
select * from mysqltest1.t11;
ERROR 42000: SELECT command denied to user 'mysqluser1'@'localhost' for table 't11'
select * from mysqltest1.t22;
ERROR 42000: SELECT command denied to user 'mysqluser1'@'localhost' for table 't22'
#
# Switch to connection 'default'.
#
# Now check that privileges became associated with a new user
# name - mysqluser10.
#
show grants for mysqluser10@localhost;
Grants for mysqluser10@localhost
GRANT USAGE ON *.* TO 'mysqluser10'@'localhost'
GRANT SELECT ON `mysqltest1`.`t22` TO 'mysqluser10'@'localhost'
GRANT SELECT ON `mysqltest1`.`t11` TO 'mysqluser10'@'localhost'
GRANT EXECUTE ON PROCEDURE `mysqltest1`.`p1` TO 'mysqluser10'@'localhost'
GRANT EXECUTE ON FUNCTION `mysqltest1`.`f1` TO 'mysqluser10'@'localhost'
select db, routine_name, routine_type, proc_priv from mysql.procs_priv where user='mysqluser10' and host='localhost';
db	routine_name	routine_type	proc_priv
mysqltest1	f1	FUNCTION	Execute
mysqltest1	p1	PROCEDURE	Execute
select db, table_name, table_priv from mysql.tables_priv where user='mysqluser10' and host='localhost';
db	table_name	table_priv
mysqltest1	t11	Select
mysqltest1	t22	Select
#
# Create connection 'bug_36544_con4' as 'mysqluser10@localhost'.
call mysqltest1.p1();
select mysqltest1.f1();
mysqltest1.f1()
0
select * from mysqltest1.t11;
i
select * from mysqltest1.t22;
i
#
# Switch to connection 'default'.
#
# Clean-up.
drop user mysqluser1@localhost;
drop user mysqluser10@localhost;
drop user mysqluser11@localhost;
drop database mysqltest1;
End of 5.0 tests
set names utf8;
grant select on test.* to юзер_юзер@localhost;
user()
юзер_юзер@localhost
revoke all on test.* from юзер_юзер@localhost;
drop user юзер_юзер@localhost;
grant select on test.* to очень_длинный_юзер@localhost;
ERROR HY000: String 'очень_длинный_юзер' is too long for user name (should be no longer than 16)
set names default;
create database mysqltest;
use mysqltest;
grant create on mysqltest.* to mysqltest@localhost;
create table t1 (i INT);
insert into t1 values (1);
ERROR 42000: INSERT command denied to user 'mysqltest'@'localhost' for table 't1'
create table t2 (i INT);
create table t4 (i INT);
grant select, insert on mysqltest.t2 to mysqltest@localhost;
grant         insert on mysqltest.t4 to mysqltest@localhost;
grant create, insert on mysqltest.t5 to mysqltest@localhost;
grant create, insert on mysqltest.t6 to mysqltest@localhost;
flush privileges;
insert into t2 values (1);
create table if not exists t1 select * from t2;
ERROR 42000: INSERT command denied to user 'mysqltest'@'localhost' for table 't1'
create table if not exists t3 select * from t2;
ERROR 42000: INSERT command denied to user 'mysqltest'@'localhost' for table 't3'
create table if not exists t4 select * from t2;
Warnings:
Note	1050	Table 't4' already exists
create table if not exists t5 select * from t2;
create table t6 select * from t2;
create table t7 select * from t2;
ERROR 42000: INSERT command denied to user 'mysqltest'@'localhost' for table 't7'
create table t4 select * from t2;
ERROR 42S01: Table 't4' already exists
create table t1 select * from t2;
ERROR 42000: INSERT command denied to user 'mysqltest'@'localhost' for table 't1'
drop table t1,t2,t4,t5,t6;
revoke create         on mysqltest.*  from mysqltest@localhost;
revoke select, insert on mysqltest.t2 from mysqltest@localhost;
revoke insert         on mysqltest.t4 from mysqltest@localhost;
revoke create, insert on mysqltest.t5 from mysqltest@localhost;
revoke create, insert on mysqltest.t6 from mysqltest@localhost;
drop user mysqltest@localhost;
drop database mysqltest;
use test;
call mtr.add_suppression("Can't open and lock privilege tables");
FLUSH PRIVILEGES without procs_priv table.
RENAME TABLE mysql.procs_priv TO mysql.procs_gone;
FLUSH PRIVILEGES;
ERROR 42S02: Table 'mysql.procs_priv' doesn't exist
Assigning privileges without procs_priv table.
CREATE DATABASE mysqltest1;
CREATE PROCEDURE mysqltest1.test() SQL SECURITY DEFINER
SELECT 1;
CREATE FUNCTION mysqltest1.test() RETURNS INT RETURN 1;
GRANT EXECUTE ON FUNCTION mysqltest1.test TO mysqltest_1@localhost;
ERROR 42S02: Table 'mysql.procs_priv' doesn't exist
GRANT ALL PRIVILEGES ON test.* TO mysqltest_1@localhost;
CALL mysqltest1.test();
1
1
DROP DATABASE mysqltest1;
RENAME TABLE mysql.procs_gone TO mysql.procs_priv;
DROP USER mysqltest_1@localhost;
FLUSH PRIVILEGES;
CREATE DATABASE dbbug33464;
CREATE USER 'userbug33464'@'localhost';
GRANT CREATE ROUTINE ON dbbug33464.* TO 'userbug33464'@'localhost';
	
userbug33464@localhost	dbbug33464
CREATE PROCEDURE sp3(v1 char(20))
BEGIN
SELECT * from dbbug33464.t6 where t6.f2= 'xyz';
END//
CREATE FUNCTION fn1() returns char(50) SQL SECURITY INVOKER
BEGIN
return 1;
END//
CREATE FUNCTION fn2() returns char(50) SQL SECURITY DEFINER
BEGIN
return 2;
END//
USE dbbug33464;
	
root@localhost	dbbug33464
SELECT fn1();
fn1()
1
SELECT fn2();
fn2()
2
DROP USER 'userbug33464'@'localhost';
DROP FUNCTION fn1;
DROP FUNCTION fn2;
DROP PROCEDURE sp3;
DROP USER 'userbug33464'@'localhost';
USE test;
DROP DATABASE dbbug33464;
SET @@global.log_bin_trust_function_creators= @old_log_bin_trust_function_creators;
CREATE USER user1;
CREATE USER user2;
GRANT CREATE ON db1.* TO 'user1'@'localhost';
GRANT CREATE ROUTINE ON db1.* TO 'user1'@'localhost';
GRANT CREATE ON db1.* TO 'user2'@'%';
GRANT CREATE ROUTINE ON db1.* TO 'user2'@'%';
FLUSH PRIVILEGES;
SHOW GRANTS FOR 'user1'@'localhost';
Grants for user1@localhost
GRANT USAGE ON *.* TO 'user1'@'localhost'
GRANT CREATE, CREATE ROUTINE ON `db1`.* TO 'user1'@'localhost'
** Connect as user1 and create a procedure.
** The creation will imply implicitly assigned
** EXECUTE and ALTER ROUTINE privileges to
** the current user user1@localhost. 
SELECT @@GLOBAL.sql_mode;
@@GLOBAL.sql_mode
NO_ENGINE_SUBSTITUTION
SELECT @@SESSION.sql_mode;
@@SESSION.sql_mode
NO_ENGINE_SUBSTITUTION
CREATE DATABASE db1;
CREATE PROCEDURE db1.proc1(p1 INT)
BEGIN
SET @x = 0;
REPEAT SET @x = @x + 1; UNTIL @x > p1 END REPEAT;
END ;||
** Connect as user2 and create a procedure.
** Implicitly assignment of privileges will
** fail because the user2@localhost is an
** unknown user.
CREATE PROCEDURE db1.proc2(p1 INT)
BEGIN
SET @x = 0;
REPEAT SET @x = @x + 1; UNTIL @x > p1 END REPEAT;
END ;||
SHOW GRANTS FOR 'user1'@'localhost';
Grants for user1@localhost
GRANT USAGE ON *.* TO 'user1'@'localhost'
GRANT CREATE, CREATE ROUTINE ON `db1`.* TO 'user1'@'localhost'
GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `db1`.`proc1` TO 'user1'@'localhost'
SHOW GRANTS FOR 'user2';
Grants for user2@%
GRANT USAGE ON *.* TO 'user2'@'%'
GRANT CREATE, CREATE ROUTINE ON `db1`.* TO 'user2'@'%'
GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `db1`.`proc2` TO 'user2'@'%'
DROP PROCEDURE db1.proc1;
DROP PROCEDURE db1.proc2;
REVOKE ALL ON db1.* FROM 'user1'@'localhost';
REVOKE ALL ON db1.* FROM 'user2'@'%';
DROP USER 'user1';
DROP USER 'user1'@'localhost';
DROP USER 'user2';
DROP DATABASE db1;
#
# Bug #25863 No database selected error, but documentation 
#            says * for global allowed
#
GRANT ALL ON * TO mysqltest_1;
ERROR 3D000: No database selected
GRANT ALL ON *.* TO mysqltest_1;
SHOW GRANTS FOR mysqltest_1;
Grants for mysqltest_1@%
GRANT ALL PRIVILEGES ON *.* TO 'mysqltest_1'@'%'
DROP USER mysqltest_1;
USE test;
GRANT ALL ON * TO mysqltest_1;
SHOW GRANTS FOR mysqltest_1;
Grants for mysqltest_1@%
GRANT USAGE ON *.* TO 'mysqltest_1'@'%'
GRANT ALL PRIVILEGES ON `test`.* TO 'mysqltest_1'@'%'
DROP USER mysqltest_1;
GRANT ALL ON *.* TO mysqltest_1;
SHOW GRANTS FOR mysqltest_1;
Grants for mysqltest_1@%
GRANT ALL PRIVILEGES ON *.* TO 'mysqltest_1'@'%'
DROP USER mysqltest_1;
CREATE DATABASE db1;
CREATE DATABASE db2;
GRANT SELECT ON db1.* to 'testbug'@localhost;
USE db2;
CREATE TABLE t1 (a INT);
USE test;
SELECT * FROM `../db2/tb2`;
ERROR 42S02: Table 'db1.../db2/tb2' doesn't exist
SELECT * FROM `../db2`.tb2;
ERROR 42000: SELECT command denied to user 'testbug'@'localhost' for table 'tb2'
SELECT * FROM `#mysql50#/../db2/tb2`;
ERROR 42S02: Table 'db1.#mysql50#/../db2/tb2' doesn't exist
DROP USER 'testbug'@localhost;
DROP TABLE db2.t1;
DROP DATABASE db1;
DROP DATABASE db2;
#
# Bug #36742
#
grant usage on Foo.* to myuser@Localhost identified by 'foo';
grant select on Foo.* to myuser@localhost;
select host,user from mysql.user where User='myuser';
host	user
localhost	myuser
revoke select on Foo.* from myuser@localhost;
delete from mysql.user where User='myuser';
flush privileges;
#########################################################################
#
# Bug#38347: ALTER ROUTINE privilege allows SHOW CREATE TABLE.
#
#########################################################################

# --
# -- Prepare the environment.
# --
DELETE FROM mysql.user WHERE User LIKE 'mysqltest_%';
DELETE FROM mysql.db WHERE User LIKE 'mysqltest_%';
DELETE FROM mysql.tables_priv WHERE User LIKE 'mysqltest_%';
DELETE FROM mysql.columns_priv WHERE User LIKE 'mysqltest_%';
FLUSH PRIVILEGES;
DROP DATABASE IF EXISTS mysqltest_db1;
CREATE DATABASE mysqltest_db1;
CREATE TABLE mysqltest_db1.t1(a INT);

# --
# -- Check that global privileges don't allow SHOW CREATE TABLE.
# --
GRANT EVENT                   ON mysqltest_db1.* TO mysqltest_u1@localhost;
GRANT CREATE TEMPORARY TABLES ON mysqltest_db1.* TO mysqltest_u1@localhost;
GRANT LOCK TABLES             ON mysqltest_db1.* TO mysqltest_u1@localhost;
GRANT ALTER ROUTINE           ON mysqltest_db1.* TO mysqltest_u1@localhost;
GRANT CREATE ROUTINE          ON mysqltest_db1.* TO mysqltest_u1@localhost;
GRANT EXECUTE                 ON mysqltest_db1.* TO mysqltest_u1@localhost;
GRANT FILE                    ON *.* TO mysqltest_u1@localhost;
GRANT CREATE USER             ON *.* TO mysqltest_u1@localhost;
GRANT PROCESS                 ON *.* TO mysqltest_u1@localhost;
GRANT RELOAD                  ON *.* TO mysqltest_u1@localhost;
GRANT REPLICATION CLIENT      ON *.* TO mysqltest_u1@localhost;
GRANT REPLICATION SLAVE       ON *.* TO mysqltest_u1@localhost;
GRANT SHOW DATABASES          ON *.* TO mysqltest_u1@localhost;
GRANT SHUTDOWN                ON *.* TO mysqltest_u1@localhost;
GRANT USAGE                   ON *.* TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT RELOAD, SHUTDOWN, PROCESS, FILE, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT, CREATE USER ON *.* TO 'mysqltest_u1'@'localhost'
GRANT CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE ROUTINE, ALTER ROUTINE, EVENT ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
ERROR 42000: SHOW command denied to user 'mysqltest_u1'@'localhost' for table 't1'

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that global SELECT allows SHOW CREATE TABLE.
# -- 

GRANT SELECT ON mysqltest_db1.* TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT SELECT ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that global INSERT allows SHOW CREATE TABLE.
# -- 

GRANT INSERT ON mysqltest_db1.* TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT INSERT ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that global UPDATE allows SHOW CREATE TABLE.
# -- 

GRANT UPDATE ON mysqltest_db1.* TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT UPDATE ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that global DELETE allows SHOW CREATE TABLE.
# -- 

GRANT DELETE ON mysqltest_db1.* TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT DELETE ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that global CREATE allows SHOW CREATE TABLE.
# -- 

GRANT CREATE ON mysqltest_db1.* TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT CREATE ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that global DROP allows SHOW CREATE TABLE.
# -- 

GRANT DROP ON mysqltest_db1.* TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT DROP ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that global ALTER allows SHOW CREATE TABLE.
# -- 

GRANT ALTER ON mysqltest_db1.* TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT ALTER ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that global INDEX allows SHOW CREATE TABLE.
# -- 

GRANT INDEX ON mysqltest_db1.* TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT INDEX ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that global REFERENCES allows SHOW CREATE TABLE.
# -- 

GRANT REFERENCES ON mysqltest_db1.* TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT REFERENCES ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that global GRANT OPTION allows SHOW CREATE TABLE.
# -- 

GRANT GRANT OPTION ON mysqltest_db1.* TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT USAGE ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost' WITH GRANT OPTION

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that global CREATE VIEW allows SHOW CREATE TABLE.
# -- 

GRANT CREATE VIEW ON mysqltest_db1.* TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT CREATE VIEW ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that global SHOW VIEW allows SHOW CREATE TABLE.
# -- 

GRANT SHOW VIEW ON mysqltest_db1.* TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT SHOW VIEW ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that table-level SELECT allows SHOW CREATE TABLE.
# -- 

GRANT SELECT ON mysqltest_db1.t1 TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT SELECT ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that table-level INSERT allows SHOW CREATE TABLE.
# -- 

GRANT INSERT ON mysqltest_db1.t1 TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT INSERT ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that table-level UPDATE allows SHOW CREATE TABLE.
# -- 

GRANT UPDATE ON mysqltest_db1.t1 TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT UPDATE ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that table-level DELETE allows SHOW CREATE TABLE.
# -- 

GRANT DELETE ON mysqltest_db1.t1 TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT DELETE ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that table-level CREATE allows SHOW CREATE TABLE.
# -- 

GRANT CREATE ON mysqltest_db1.t1 TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT CREATE ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that table-level DROP allows SHOW CREATE TABLE.
# -- 

GRANT DROP ON mysqltest_db1.t1 TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT DROP ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that table-level ALTER allows SHOW CREATE TABLE.
# -- 

GRANT ALTER ON mysqltest_db1.t1 TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT ALTER ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that table-level INDEX allows SHOW CREATE TABLE.
# -- 

GRANT INDEX ON mysqltest_db1.t1 TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT INDEX ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that table-level REFERENCES allows SHOW CREATE TABLE.
# -- 

GRANT REFERENCES ON mysqltest_db1.t1 TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT REFERENCES ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that table-level GRANT OPTION allows SHOW CREATE TABLE.
# -- 

GRANT GRANT OPTION ON mysqltest_db1.t1 TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT USAGE ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost' WITH GRANT OPTION

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that table-level CREATE VIEW allows SHOW CREATE TABLE.
# -- 

GRANT CREATE VIEW ON mysqltest_db1.t1 TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT CREATE VIEW ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Check that table-level SHOW VIEW allows SHOW CREATE TABLE.
# -- 

GRANT SHOW VIEW ON mysqltest_db1.t1 TO mysqltest_u1@localhost;

SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'
GRANT SHOW VIEW ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost'

# connection: con1 (mysqltest_u1@mysqltest_db1)

SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

# connection: default

REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost;
SHOW GRANTS FOR mysqltest_u1@localhost;
Grants for mysqltest_u1@localhost
GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost'

# -- 
# -- Cleanup.
# -- 

DROP DATABASE mysqltest_db1;
DROP USER mysqltest_u1@localhost;

# End of Bug#38347.

#
# BUG#11759114 - '51401: GRANT TREATS NONEXISTENT FUNCTIONS/PRIVILEGES
#                 DIFFERENTLY'.
#
drop database if exists mysqltest_db1;
create database mysqltest_db1;
create user mysqltest_u1;
# Both GRANT statements below should fail with the same error.
grant execute on function mysqltest_db1.f1 to mysqltest_u1;
ERROR 42000: FUNCTION or PROCEDURE f1 does not exist
grant execute on procedure mysqltest_db1.p1 to mysqltest_u1;
ERROR 42000: FUNCTION or PROCEDURE p1 does not exist
# Let us show that GRANT behaviour for routines is consistent
# with GRANT behaviour for tables. Attempt to grant privilege
# on non-existent table also results in an error.
grant select on mysqltest_db1.t1 to mysqltest_u1;
ERROR 42S02: Table 'mysqltest_db1.t1' doesn't exist
show grants for mysqltest_u1;
Grants for mysqltest_u1@%
GRANT USAGE ON *.* TO 'mysqltest_u1'@'%'
drop database mysqltest_db1;
drop user mysqltest_u1;
#
# Bug#11756966 - 48958: STORED PROCEDURES CAN BE LEVERAGED TO BYPASS
#                DATABASE SECURITY
#
DROP DATABASE IF EXISTS secret;
DROP DATABASE IF EXISTS no_such_db;
CREATE DATABASE secret;
GRANT USAGE ON *.* TO 'untrusted'@localhost;
# Connection con1
SHOW GRANTS;
Grants for untrusted@localhost
GRANT USAGE ON *.* TO 'untrusted'@'localhost'
SHOW DATABASES;
Database
information_schema
test
# Both statements below should fail with the same error.
# They used to give different errors, thereby
# hinting that the secret database exists.
CREATE PROCEDURE no_such_db.foo() BEGIN END;
ERROR 42000: Access denied for user 'untrusted'@'localhost' to database 'no_such_db'
CREATE PROCEDURE secret.peek_at_secret() BEGIN END;
ERROR 42000: Access denied for user 'untrusted'@'localhost' to database 'secret'
# Connection default
DROP USER 'untrusted'@localhost;
DROP DATABASE secret;
#
# Bug#12766319 - 61865: RENAME USER DOES NOT WORK CORRECTLY - 
#                       REQUIRES FLUSH PRIVILEGES
#
CREATE USER foo@'127.0.0.1';
GRANT ALL ON *.* TO foo@'127.0.0.1';
# First attempt, should connect successfully 
SELECT user(), current_user();
user()	current_user()
foo@localhost	foo@127.0.0.1
# Rename the user
RENAME USER foo@'127.0.0.1' to foo@'127.0.0.0/255.0.0.0';
# Second attempt, should connect successfully as its valid mask
# This was failing without fix 
SELECT user(), current_user();
user()	current_user()
foo@localhost	foo@127.0.0.0/255.0.0.0
# Rename the user back to original
RENAME USER foo@'127.0.0.0/255.0.0.0' to foo@'127.0.0.1';
# Third attempt, should connect successfully 
SELECT user(), current_user();
user()	current_user()
foo@localhost	foo@127.0.0.1
# Clean-up
DROP USER foo@'127.0.0.1';
# End of Bug#12766319

Filemanager

Name Type Size Permission Actions
1st.result File 483 B 0644
alias.result File 13.42 KB 0644
almost_full.result File 1.11 KB 0644
alter_table-big.result File 3.12 KB 0644
alter_table.result File 108.41 KB 0644
analyze.result File 2.21 KB 0644
ansi.result File 1.14 KB 0644
archive-big.result File 616 B 0644
archive.result File 525.38 KB 0644
archive_bitfield.result File 4.26 KB 0644
archive_debug.result File 355 B 0644
archive_gis.result File 23.13 KB 0644
archive_no_symlink.result File 882 B 0644
archive_plugin.result File 543 B 0644
archive_symlink.result File 2.07 KB 0644
audit_plugin.result File 744 B 0644
auth_rpl.result File 1.85 KB 0644
auto_increment.result File 11.72 KB 0644
backup.result File 4.29 KB 0644
bench_count_distinct.result File 462 B 0644
big_test.require File 17 B 0644
bigint.result File 20.72 KB 0644
binary.result File 5.67 KB 0644
binary_to_hex.result File 5.87 KB 0644
binlog_tx_isolation.result File 1.71 KB 0644
blackhole.result File 613 B 0644
blackhole_plugin.result File 571 B 0644
bool.result File 2.56 KB 0644
bootstrap.result File 267 B 0644
bug12427262.result File 1.86 KB 0644
bug12969156.result File 952 B 0644
bug17076131.result File 322 B 0644
bug33509.result File 2.31 KB 0644
bug39022.result File 1.2 KB 0644
bug46080.result File 669 B 0644
bug46261.result File 382 B 0644
bug46760.result File 1.26 KB 0644
bug47671.result File 287 B 0644
bug58669.result File 480 B 0644
bulk_replace.result File 281 B 0644
cache_innodb.result File 5.42 KB 0644
case.result File 10.06 KB 0644
case_insensitive_file_system.require File 46 B 0644
case_sensitive_file_system.require File 47 B 0644
cast.result File 15.75 KB 0644
change_user.result File 3.31 KB 0644
check.result File 1.42 KB 0644
check_auto_permission.result File 251 B 0644
check_var_limit.require File 8 B 0644
client_xml.result File 2.38 KB 0644
comment_column.result File 140.57 KB 0644
comment_column2.result File 355.68 KB 0644
comment_index.result File 173.03 KB 0644
comment_table.result File 28.72 KB 0644
comments.result File 2.34 KB 0644
commit.result File 13.32 KB 0644
commit_1innodb.result File 19.19 KB 0644
compare.result File 3.17 KB 0644
compress.result File 56.5 KB 0644
concurrent_innodb_safelog.result File 31.89 KB 0644
concurrent_innodb_unsafelog.result File 31.61 KB 0644
connect.result File 12.75 KB 0644
connect_debug.result File 1.48 KB 0644
consistent_snapshot.result File 1.14 KB 0644
constraints.result File 2.55 KB 0644
count_distinct.result File 7.89 KB 0644
count_distinct2.result File 2.21 KB 0644
count_distinct3.result File 278 B 0644
create-big.result File 7.6 KB 0644
create.result File 147.09 KB 0644
create_not_windows.result File 961 B 0644
create_select_tmp.result File 846 B 0644
csv.result File 58.88 KB 0644
csv_alter_table.result File 1.17 KB 0644
csv_not_null.result File 1.75 KB 0644
ctype_ascii.result File 2.11 KB 0644
ctype_big5.result File 33.85 KB 0644
ctype_binary.result File 82.34 KB 0644
ctype_collate.result File 13.5 KB 0644
ctype_cp1250_ch.result File 21.88 KB 0644
ctype_cp1251.result File 96.09 KB 0644
ctype_cp932.result File 996 B 0644
ctype_cp932_binlog_row.result File 607 B 0644
ctype_cp932_binlog_stm.result File 251.22 KB 0644
ctype_create.result File 3.12 KB 0644
ctype_errors.result File 1.66 KB 0644
ctype_eucjpms.result File 400.21 KB 0644
ctype_euckr.result File 434.59 KB 0644
ctype_filename.result File 324 B 0644
ctype_filesystem.result File 341 B 0644
ctype_gb2312.result File 33.29 KB 0644
ctype_gbk.result File 49.63 KB 0644
ctype_gbk_binlog.result File 647 B 0644
ctype_hebrew.result File 254 B 0644
ctype_latin1.result File 118.67 KB 0644
ctype_latin1_de.result File 15.74 KB 0644
ctype_latin2.result File 13.32 KB 0644
ctype_latin2_ch.result File 25.11 KB 0644
ctype_ldml.result File 28.05 KB 0644
ctype_like_range.result File 80.89 KB 0644
ctype_many.result File 42.67 KB 0644
ctype_mb.result File 2.13 KB 0644
ctype_recoding.result File 9.6 KB 0644
ctype_sjis.result File 195.68 KB 0644
ctype_tis620.result File 100.45 KB 0644
ctype_uca.result File 154.97 KB 0644
ctype_ucs.result File 142.4 KB 0644
ctype_ucs2_def.result File 1.05 KB 0644
ctype_ujis.result File 364.9 KB 0644
ctype_ujis_ucs2.result File 548.59 KB 0644
ctype_utf16.result File 44.96 KB 0644
ctype_utf16_def.result File 273 B 0644
ctype_utf16_uca.result File 72.28 KB 0644
ctype_utf16le.result File 50.54 KB 0644
ctype_utf32.result File 48.05 KB 0644
ctype_utf32_uca.result File 75.11 KB 0644
ctype_utf8.result File 167.06 KB 0644
ctype_utf8mb4.result File 80.38 KB 0644
ctype_utf8mb4_heap.result File 72.21 KB 0644
ctype_utf8mb4_innodb.result File 74.62 KB 0644
ctype_utf8mb4_myisam.result File 74.63 KB 0644
ctype_utf8mb4_uca.result File 38.82 KB 0644
date_formats.result File 24.96 KB 0644
ddl_i18n_koi8r.result File 113.33 KB 0644
ddl_i18n_utf8.result File 116.35 KB 0644
deadlock_innodb.result File 2.35 KB 0644
debug_sync.result File 11.85 KB 0644
debug_sync2.result File 434 B 0644
default.result File 8.02 KB 0644
delayed.result File 17.7 KB 0644
delete.result File 16 KB 0644
deprecated_features.result File 2.03 KB 0644
derived.result File 78.6 KB 0644
dirty_close.result File 345 B 0644
disabled_replication.result File 3.01 KB 0644
disconnect_on_expired_password_default.result File 1.4 KB 0644
disconnect_on_expired_password_off.result File 1.36 KB 0644
distinct.result File 30.85 KB 0644
drop-no_root.result File 454 B 0644
drop.result File 5.73 KB 0644
drop_debug.result File 485 B 0644
ds_mrr-big.result File 2.14 KB 0644
dynamic_tracing.result File 813 B 0644
empty_table.result File 229 B 0644
enable_cleartext_plugin.result File 1.35 KB 0644
endspace.result File 6.61 KB 0644
eq_range_idx_stat.result File 4.02 KB 0644
error_simulation.result File 3.23 KB 0644
errors.result File 5.93 KB 0644
events_1.result File 22.18 KB 0644
events_2.result File 17.23 KB 0644
events_bugs.result File 37.35 KB 0644
events_embedded.result File 86 B 0644
events_grant.result File 10.33 KB 0644
events_logs_tests.result File 2.37 KB 0644
events_microsec.result File 810 B 0644
events_restart.result File 4.15 KB 0644
events_scheduling.result File 3.11 KB 0644
events_stress.result File 2.39 KB 0644
events_time_zone.result File 5.4 KB 0644
events_trans.result File 3.49 KB 0644
events_trans_notembedded.result File 1.37 KB 0644
execution_constants.result File 1.05 KB 0644
explain.result File 28.33 KB 0644
explain_json_all.result File 63.13 KB 0644
explain_json_none.result File 64.7 KB 0644
file_contents.result File 181 B 0644
filesort_debug.result File 2.79 KB 0644
fix_priv_tables.result File 1.3 KB 0644
flush.result File 13.75 KB 0644
flush2.result File 882 B 0644
flush_block_commit.result File 1.47 KB 0644
flush_block_commit_notembedded.result File 770 B 0644
flush_read_lock.result File 72.07 KB 0644
flush_read_lock_kill.result File 1.12 KB 0644
flush_table.result File 11.22 KB 0644
foreign_key.result File 3.33 KB 0644
fulltext.result File 28.72 KB 0644
fulltext2.result File 7.54 KB 0644
fulltext3.result File 540 B 0644
fulltext_cache.result File 2.67 KB 0644
fulltext_distinct.result File 1.25 KB 0644
fulltext_left_join.result File 4 KB 0644
fulltext_multi.result File 766 B 0644
fulltext_order_by.result File 5.83 KB 0644
fulltext_plugin.result File 229 B 0644
fulltext_update.result File 930 B 0644
fulltext_var.result File 1.3 KB 0644
func_aes.result File 12.78 KB 0644
func_aes_cfb1.result File 4.5 KB 0644
func_aes_cfb128.result File 4.57 KB 0644
func_aes_cfb8.result File 4.5 KB 0644
func_aes_misc.result File 8.28 KB 0644
func_aes_ofb.result File 4.47 KB 0644
func_analyse.result File 19.01 KB 0644
func_compress.result File 4.84 KB 0644
func_concat.result File 4.03 KB 0644
func_crypt.result File 4.37 KB 0644
func_date_add.result File 3.62 KB 0644
func_default.result File 1.19 KB 0644
func_des_encrypt.result File 1018 B 0644
func_digest.result File 121.48 KB 0644
func_encrypt.result File 10.33 KB 0644
func_encrypt_nossl.result File 4.21 KB 0644
func_encrypt_ucs2.result File 765 B 0644
func_equal.result File 1.27 KB 0644
func_gconcat.result File 48.53 KB 0644
func_group.result File 54.64 KB 0644
func_group_innodb.result File 5.12 KB 0644
func_group_innodb_16k.result File 544 B 0644
func_if.result File 6.05 KB 0644
func_in_all.result File 27.62 KB 0644
func_in_icp.result File 27.26 KB 0644
func_in_icp_mrr.result File 27.57 KB 0644
func_in_mrr.result File 27.29 KB 0644
func_in_mrr_cost.result File 27.01 KB 0644
func_in_none.result File 26.96 KB 0644
func_isnull.result File 827 B 0644
func_like.result File 4.45 KB 0644
func_math.result File 28.06 KB 0644
func_misc.result File 28.2 KB 0644
func_op.result File 1.93 KB 0644
func_regexp.result File 4.37 KB 0644
func_rollback.result File 12.44 KB 0644
func_sapdb.result File 12.38 KB 0644
func_set.result File 8.51 KB 0644
func_str.result File 157.75 KB 0644
func_str_debug.result File 349 B 0644
func_str_no_ps.result File 1.07 KB 0644
func_system.result File 2.63 KB 0644
func_test.result File 13.44 KB 0644
func_time.result File 67.37 KB 0644
func_timestamp.result File 518 B 0644
func_weight_string.result File 3.44 KB 0644
function_defaults.result File 109.23 KB 0644
function_defaults_notembedded.result File 6.38 KB 0644
gcc296.result File 528 B 0644
get_diagnostics.result File 24.96 KB 0644
gis-debug.result File 16.13 KB 0644
gis-precise.result File 28.34 KB 0644
gis-rt-precise.result File 1.86 KB 0644
gis-rtree.result File 78.36 KB 0644
gis.result File 58.53 KB 0644
grant.result File 95.95 KB 0644
grant2.result File 31.12 KB 0644
grant3.result File 7.15 KB 0644
grant4.result File 8.85 KB 0644
grant_cache.result File 5.62 KB 0644
grant_explain_non_select.result File 9.5 KB 0644
grant_lowercase_fs.result File 557 B 0644
greedy_optimizer.result File 592.8 KB 0644
greedy_search.result File 12.42 KB 0644
group_by.result File 84.6 KB 0644
group_min_max.result File 115.33 KB 0644
group_min_max_innodb.result File 17.52 KB 0644
handler_innodb.result File 40.72 KB 0644
handler_myisam.result File 44.62 KB 0644
handler_read_last.result File 1.15 KB 0644
have_big5.require File 79 B 0644
have_binlog_format_mixed.require File 40 B 0644
have_binlog_format_row.require File 38 B 0644
have_binlog_format_statement.require File 44 B 0644
have_binlog_rows_query.require File 53 B 0644
have_compress.require File 38 B 0644
have_cp1250_ch.require File 79 B 0644
have_cp1251.require File 84 B 0644
have_cp866.require File 82 B 0644
have_cp932.require File 83 B 0644
have_crypt.require File 35 B 0644
have_debug.require File 8 B 0644
have_debug_sync.require File 13 B 0644
have_eucjpms.require File 87 B 0644
have_euckr.require File 81 B 0644
have_gb2312.require File 84 B 0644
have_gbk.require File 78 B 0644
have_geometry.require File 38 B 0644
have_koi8r.require File 81 B 0644
have_latin2_ch.require File 78 B 0644
have_local_infile.require File 36 B 0644
have_log_bin.require File 31 B 0644
have_met_timezone.require File 43 B 0644
have_moscow_leap_timezone.require File 46 B 0644
have_mysql_upgrade.result File 21 B 0644
have_ndb_extra.require File 14 B 0644
have_ndbapi_examples.require File 19 B 0644
have_nodebug.require File 8 B 0644
have_optimizer_switch.require File 19 B 0644
have_outfile.require File 55 B 0644
have_partition.require File 42 B 0644
have_perror.require File 14 B 0644
have_profiling.require File 39 B 0644
have_query_cache.require File 41 B 0644
have_sjis.require File 81 B 0644
have_ssl.require File 33 B 0644
have_ssl_is_yes_or_disabled_only.require File 43 B 0644
have_symlink.require File 37 B 0644
have_tis620.require File 81 B 0644
have_ucs2.require File 80 B 0644
have_ujis.require File 81 B 0644
have_utf16.require File 82 B 0644
have_utf32.require File 82 B 0644
have_utf8.require File 80 B 0644
have_utf8mb4.require File 86 B 0644
having.result File 19.72 KB 0644
heap.result File 20.86 KB 0644
heap_auto_increment.result File 894 B 0644
heap_btree.result File 9.32 KB 0644
heap_hash.result File 14.37 KB 0644
help.result File 6.46 KB 0644
host_cache_size_functionality.result File 3.32 KB 0644
implicit_char_to_num_conversion.result File 6.44 KB 0644
implicit_commit.result File 17.71 KB 0644
import_schema_mismatch.result File 538 B 0644
index_merge_delete.result File 25.88 KB 0644
index_merge_innodb.result File 61.63 KB 0644
index_merge_insert-and-replace.result File 12.55 KB 0644
index_merge_intersect_dml.result File 4.96 KB 0644
index_merge_myisam.result File 73.48 KB 0644
index_merge_update.result File 16.41 KB 0644
information_schema-big.result File 2.81 KB 0644
information_schema.result File 87.98 KB 0644
information_schema_chmod.result File 182 B 0644
information_schema_db.result File 9.29 KB 0644
information_schema_inno.result File 4.33 KB 0644
information_schema_parameters.result File 22.11 KB 0644
information_schema_part.result File 9.71 KB 0644
information_schema_routines.result File 28.64 KB 0644
init_connect.result File 2.53 KB 0644
init_file.result File 323 B 0644
innodb_explain_json_non_select_all.result File 220.92 KB 0644
innodb_explain_json_non_select_none.result File 225.15 KB 0644
innodb_explain_non_select_all.result File 119.15 KB 0644
innodb_explain_non_select_none.result File 119.03 KB 0644
innodb_icp.result File 26.73 KB 0644
innodb_icp_all.result File 26.79 KB 0644
innodb_icp_none.result File 26.63 KB 0644
innodb_ignore_builtin.result File 354 B 0644
innodb_log_file_size_functionality.result File 2.79 KB 0644
innodb_mrr.result File 20.3 KB 0644
innodb_mrr_all.result File 20.47 KB 0644
innodb_mrr_cost.result File 20.27 KB 0644
innodb_mrr_cost_all.result File 20.43 KB 0644
innodb_mrr_cost_icp.result File 20.38 KB 0644
innodb_mrr_icp.result File 20.41 KB 0644
innodb_mrr_none.result File 20.22 KB 0644
innodb_mysql_lock.result File 5.52 KB 0644
innodb_mysql_lock2.result File 21.27 KB 0644
innodb_mysql_sync.result File 17.65 KB 0644
innodb_pk_extension_off.result File 14.06 KB 0644
innodb_pk_extension_on.result File 14.33 KB 0644
innodb_recovery_with_upper_case_names.result File 1.21 KB 0644
insert.result File 26.41 KB 0644
insert_debug.result File 1.29 KB 0644
insert_notembedded.result File 5.72 KB 0644
insert_select.result File 14.04 KB 0644
insert_update.result File 9.64 KB 0644
ipv4_as_ipv6.result File 21.69 KB 0644
ipv6.result File 12.49 KB 0644
is_debug_build.require File 32 B 0644
is_embedded.require File 16 B 0644
isam.result File 15.65 KB 0644
join.result File 46.84 KB 0644
join_cache_bka.result File 88.08 KB 0644
join_cache_bka_nixbnl.result File 87.38 KB 0644
join_cache_bkaunique.result File 88.54 KB 0644
join_cache_bnl.result File 86.26 KB 0644
join_cache_nojb.result File 85.38 KB 0644
join_crash.result File 4.59 KB 0644
join_nested.result File 62.76 KB 0644
join_nested_bka.result File 66.92 KB 0644
join_nested_bka_nixbnl.result File 63.95 KB 0644
join_optimizer.result File 2.54 KB 0644
join_outer.result File 63.99 KB 0644
join_outer_bka.result File 64.28 KB 0644
join_outer_bka_nixbnl.result File 62.57 KB 0644
join_outer_innodb.result File 1.86 KB 0644
key.result File 20.98 KB 0644
key_cache.result File 10.91 KB 0644
key_diff.result File 853 B 0644
key_primary.result File 666 B 0644
keywords.result File 6.63 KB 0644
kill.result File 8.37 KB 0644
kill_debug.result File 1.56 KB 0644
limit.result File 4.12 KB 0644
loaddata.result File 16.91 KB 0644
loaddata_autocom_innodb.result File 637 B 0644
loadxml.result File 2.71 KB 0644
locale.result File 5.59 KB 0644
lock.result File 15.03 KB 0644
lock_multi.result File 11.53 KB 0644
lock_multi_bug38499.result File 691 B 0644
lock_multi_bug38691.result File 539 B 0644
lock_sync.result File 31.17 KB 0644
lock_tables_lost_commit.result File 150 B 0644
log_empty_name.result File 247 B 0644
log_errchk.result File 664 B 0644
log_state.result File 9.66 KB 0644
log_state_bug33693.result File 111 B 0644
log_tables-big.result File 996 B 0644
log_tables.result File 40.97 KB 0644
log_tables_debug.result File 838 B 0644
log_tables_upgrade.result File 2.48 KB 0644
long_tmpdir.result File 99 B 0644
lowercase0.require File 45 B 0644
lowercase1.require File 45 B 0644
lowercase2.require File 45 B 0644
lowercase_fs_off.result File 2.05 KB 0644
lowercase_fs_on.result File 75 B 0644
lowercase_mixed_tmpdir.result File 176 B 0644
lowercase_mixed_tmpdir_innodb.result File 190 B 0644
lowercase_table.result File 2.67 KB 0644
lowercase_table2.result File 8.66 KB 0644
lowercase_table4.result File 3.68 KB 0644
lowercase_table_grant.result File 1.5 KB 0644
lowercase_table_qcache.result File 649 B 0644
lowercase_utf8.result File 173 B 0644
lowercase_view.result File 10.22 KB 0644
mdl_sync.result File 89.85 KB 0644
merge-big.result File 728 B 0644
merge.result File 97.6 KB 0644
merge_innodb.result File 1.31 KB 0644
merge_mmap.result File 3.33 KB 0644
metadata.result File 13.88 KB 0644
mix2_myisam.result File 57.76 KB 0644
mix2_myisam_ucs2.result File 15.31 KB 0644
multi_plugin_load.result File 347 B 0644
multi_plugin_load_add.result File 455 B 0644
multi_plugin_load_add2.result File 455 B 0644
multi_statement.result File 563 B 0644
multi_update.result File 23.21 KB 0644
multi_update2.result File 1016 B 0644
multi_update_innodb.result File 2.56 KB 0644
multi_update_tiny_hash.result File 1.5 KB 0644
myisam-blob.result File 1.25 KB 0644
myisam-system.result File 391 B 0644
myisam.result File 90.78 KB 0644
myisam_crash_before_flush_keys.result File 1.15 KB 0644
myisam_debug.result File 1.21 KB 0644
myisam_explain_json_non_select_all.result File 217.3 KB 0644
myisam_explain_json_non_select_none.result File 221.32 KB 0644
myisam_explain_non_select_all.result File 116.26 KB 0644
myisam_explain_non_select_none.result File 115.98 KB 0644
myisam_icp.result File 26.57 KB 0644
myisam_icp_all.result File 26.63 KB 0644
myisam_icp_none.result File 26.45 KB 0644
myisam_mrr.result File 19.24 KB 0644
myisam_mrr_all.result File 19.44 KB 0644
myisam_mrr_cost.result File 19.19 KB 0644
myisam_mrr_cost_all.result File 19.39 KB 0644
myisam_mrr_cost_icp.result File 19.33 KB 0644
myisam_mrr_icp.result File 19.38 KB 0644
myisam_mrr_none.result File 19.14 KB 0644
myisam_recover.result File 4.57 KB 0644
myisam_row_rpl.result File 2.04 KB 0644
myisampack.result File 7.56 KB 0644
mysql-bug41486.result File 465 B 0644
mysql-bug45236.result File 329 B 0644
mysql.result File 8.67 KB 0644
mysql_binary_mode.result File 1.52 KB 0644
mysql_client_test.result File 8.92 KB 0644
mysql_client_test_embedded.result File 111 B 0644
mysql_client_test_qcache.result File 502 B 0644
mysql_comments.result File 5.02 KB 0644
mysql_config_editor.result File 6.6 KB 0644
mysql_cp932.result File 37 B 0644
mysql_embedded.result File 171 B 0644
mysql_embedded_client_test.result File 153 B 0644
mysql_locale_posix.result File 973 B 0644
mysql_not_windows.result File 80 B 0644
mysql_plugin.result File 3.88 KB 0644
mysql_protocols.result File 208 B 0644
mysql_upgrade.result File 26.82 KB 0644
mysql_upgrade_ssl.result File 1.99 KB 0644
mysqladmin.result File 872 B 0644
mysqladmin_shutdown.result File 157 B 0644
mysqlbinlog.result File 30.17 KB 0644
mysqlbinlog_debug.result File 235 B 0644
mysqlbinlog_mixed_or_statment.result File 855 B 0644
mysqlbinlog_raw_mode.result File 8.32 KB 0644
mysqlbinlog_raw_mode_win.result File 8.08 KB 0644
mysqlbinlog_row_big.result File 2.42 KB 0644
mysqlcheck.result File 15.2 KB 0644
mysqld--defaults-file.result File 710 B 0644
mysqld--help-notwin.result File 53.91 KB 0644
mysqld--help-win.result File 54.47 KB 0644
mysqldump-compat.result File 111 B 0644
mysqldump-max.result File 10.95 KB 0644
mysqldump-no-binlog.result File 50 B 0644
mysqldump.result File 280.61 KB 0644
mysqldump_restore.result File 3.78 KB 0644
mysqlhotcopy_archive.result File 1.8 KB 0644
mysqlhotcopy_myisam.result File 2.28 KB 0644
mysqlimport.result File 490 B 0644
mysqlshow.result File 7.56 KB 0644
mysqlslap.result File 6.88 KB 0644
mysqltest.result File 31.15 KB 0644
named_pipe.result File 56.25 KB 0644
ndb_default_cluster.require File 51 B 0644
negation_elimination.result File 8.72 KB 0644
no-threads.result File 329 B 0644
no_binlog.result File 64 B 0644
not_embedded.require File 16 B 0644
not_embedded_server.result File 5.63 KB 0644
not_ndb.require File 39 B 0644
not_openssl.require File 36 B 0644
not_partition.result File 4.14 KB 0644
not_ssl.require File 32 B 0644
not_true.require File 10 B 0644
not_valgrind.require File 17 B 0644
not_windows.require File 7 B 0644
null.result File 14.48 KB 0644
null_key_all.result File 15.6 KB 0644
null_key_icp.result File 15.53 KB 0644
null_key_none.result File 15.47 KB 0644
odbc.result File 954 B 0644
olap.result File 19.13 KB 0644
one_thread_per_connection.require File 44 B 0644
openssl.require File 37 B 0644
openssl_1.result File 8.04 KB 0644
optimizer_bug12837084.result File 13.97 KB 0644
optimizer_debug_sync.result File 1.32 KB 0644
optimizer_switch.result File 19.94 KB 0644
order_by_all.result File 61.42 KB 0644
order_by_icp_mrr.result File 61.37 KB 0644
order_by_none.result File 61.15 KB 0644
order_by_sortkey.result File 2.91 KB 0644
order_fill_sortbuf.result File 262 B 0644
outfile.result File 2.09 KB 0644
outfile_loaddata.result File 10.12 KB 0644
overflow.result File 235 B 0644
packet.result File 5 KB 0644
parser.result File 38.22 KB 0644
parser_bug21114_innodb.result File 25.39 KB 0644
parser_not_embedded.result File 4.42 KB 0644
parser_precedence.result File 23.96 KB 0644
parser_stack.result File 9.54 KB 0644
partition.result File 76.63 KB 0644
partition_archive.result File 4.51 KB 0644
partition_binlog.result File 2.3 KB 0644
partition_binlog_stmt.result File 442 B 0644
partition_blackhole.result File 174 B 0644
partition_bug18198.result File 8.07 KB 0644
partition_cache.result File 5.16 KB 0644
partition_charset.result File 434 B 0644
partition_column.result File 23.07 KB 0644
partition_column_prune.result File 2.83 KB 0644
partition_csv.result File 1.83 KB 0644
partition_datatype.result File 39.34 KB 0644
partition_debug_sync.result File 3.19 KB 0644
partition_disabled.result File 4.59 KB 0644
partition_error.result File 82.17 KB 0644
partition_exchange.result File 37.6 KB 0644
partition_explicit_prune.result File 55.63 KB 0644
partition_federated.result File 271 B 0644
partition_grant.result File 1.54 KB 0644
partition_hash.result File 7.12 KB 0644
partition_index_innodb.result File 4.04 KB 0644
partition_index_myisam.result File 3.21 KB 0644
partition_innodb.result File 30.66 KB 0644
partition_innodb_plugin.result File 5.26 KB 0644
partition_innodb_semi_consistent.result File 2.92 KB 0644
partition_innodb_stmt.result File 1.12 KB 0644
partition_innodb_tablespace.result File 12.76 KB 0644
partition_key_cache.result File 16.74 KB 0644
partition_list.result File 12.92 KB 0644
partition_locking.result File 238.13 KB 0644
partition_locking_4.result File 1.7 KB 0644
partition_mgm.result File 4.7 KB 0644
partition_mgm_err.result File 7.48 KB 0644
partition_mgm_err2.result File 43 B 0644
partition_myisam.result File 7.67 KB 0644
partition_not_blackhole.result File 456 B 0644
partition_not_windows.result File 3.47 KB 0644
partition_open_files_limit.result File 1.02 KB 0644
partition_order.result File 16.29 KB 0644
partition_pruning.result File 166.97 KB 0644
partition_range.result File 33.91 KB 0644
partition_rename_longfilename.result File 2.89 KB 0644
partition_symlink.result File 4.89 KB 0644
partition_sync.result File 1.34 KB 0644
partition_truncate.result File 751 B 0644
partition_utf8.result File 2 KB 0644
partition_windows.result File 1.18 KB 0644
perror-win.result File 453 B 0644
perror.result File 471 B 0644
plugin.result File 7.73 KB 0644
plugin_auth.result File 23.39 KB 0644
plugin_auth_qa.result File 20.77 KB 0644
plugin_auth_qa_1.result File 13.74 KB 0644
plugin_auth_qa_2.result File 8.87 KB 0644
plugin_auth_qa_3.result File 1.14 KB 0644
plugin_auth_sha256.result File 3.97 KB 0644
plugin_auth_sha256_2.result File 1.49 KB 0644
plugin_auth_sha256_server_default.result File 2.7 KB 0644
plugin_auth_sha256_server_default_tls.result File 2.83 KB 0644
plugin_auth_sha256_tls.result File 1.82 KB 0644
plugin_load.result File 76 B 0644
plugin_load_option.result File 321 B 0644
plugin_not_embedded.result File 474 B 0644
preload.result File 3.84 KB 0644
profiling.result File 16.13 KB 0644
ps.result File 116.73 KB 0644
ps_10nestset.result File 2.08 KB 0644
ps_11bugs.result File 5.92 KB 0644
ps_1general.result File 35.91 KB 0644
ps_2myisam.result File 103.82 KB 0644
ps_3innodb.result File 103.36 KB 0644
ps_4heap.result File 103.28 KB 0644
ps_5merge.result File 202.34 KB 0644
ps_ddl.result File 53.68 KB 0644
ps_ddl1.result File 11.06 KB 0644
ps_grant.result File 3.71 KB 0644
ps_not_windows.result File 516 B 0644
python_with_json.require File 27 B 0644
query_cache.result File 75.57 KB 0644
query_cache_28249.result File 2.29 KB 0644
query_cache_debug.result File 8.63 KB 0644
query_cache_disabled.result File 639 B 0644
query_cache_merge.result File 32.41 KB 0644
query_cache_notembedded.result File 6.61 KB 0644
query_cache_ps_no_prot.result File 11.1 KB 0644
query_cache_ps_ps_prot.result File 11.09 KB 0644
query_cache_size_functionality.result File 6.64 KB 0644
query_cache_type_functionality.result File 6.79 KB 0644
query_cache_with_views.result File 4.96 KB 0644
range_all.result File 81.48 KB 0644
range_icp.result File 81.08 KB 0644
range_icp_mrr.result File 81.42 KB 0644
range_mrr.result File 80.98 KB 0644
range_mrr_cost.result File 80.67 KB 0644
range_none.result File 80.63 KB 0644
read_many_rows_innodb.result File 2.83 KB 0644
read_only.result File 6.3 KB 0644
read_only_innodb.result File 4.76 KB 0644
rename.result File 1.58 KB 0644
renamedb.result File 880 B 0644
repair.result File 7.02 KB 0644
replace.result File 1.09 KB 0644
rewrite_general_log.result File 8.33 KB 0644
rewrite_slow_log.result File 2.92 KB 0644
rollback.result File 582 B 0644
round.result File 6.74 KB 0644
row.result File 15.91 KB 0644
rowid_order_innodb.result File 3.32 KB 0644
rpl_colSize.result File 4.39 KB 0644
rpl_extraColmaster_innodb.result File 23.85 KB 0644
rpl_extraColmaster_myisam.result File 23.85 KB 0644
rpl_mysqldump_slave.result File 867 B 0644
schema.result File 2.37 KB 0644
secure_file_priv_win.result File 1.43 KB 0644
select_all.result File 150.09 KB 0644
select_all_bka.result File 150.86 KB 0644
select_all_bka_nixbnl.result File 150.11 KB 0644
select_found.result File 6.17 KB 0644
select_icp_mrr.result File 150.04 KB 0644
select_icp_mrr_bka.result File 150.8 KB 0644
select_icp_mrr_bka_nixbnl.result File 150.06 KB 0644
select_none.result File 149.37 KB 0644
select_none_bka.result File 149.46 KB 0644
select_none_bka_nixbnl.result File 148.66 KB 0644
select_safe.result File 3.92 KB 0644
server_id.require File 32 B 0644
server_id1.require File 34 B 0644
server_uuid.result File 755 B 0644
server_uuid_embedded.result File 325 B 0644
shm.result File 56.74 KB 0644
show_check.result File 71.33 KB 0644
show_processlist.result File 1.84 KB 0644
show_processlist_state.result File 146 B 0644
show_profile.result File 491 B 0644
signal.result File 63.09 KB 0644
signal_code.result File 1020 B 0644
signal_demo1.result File 6.06 KB 0644
signal_demo2.result File 3.86 KB 0644
signal_demo3.result File 3.33 KB 0644
signal_sqlmode.result File 2.51 KB 0644
single_delete_update.result File 24.41 KB 0644
skip_grants.result File 2.47 KB 0644
skip_log_bin.result File 167 B 0644
skip_name_resolve.result File 1.28 KB 0644
slave-running.result File 71 B 0644
slave-stopped.result File 72 B 0644
sort_buffer_size_functionality.result File 6.48 KB 0644
sp-big.result File 1.47 KB 0644
sp-bugs.result File 7.66 KB 0644
sp-code.result File 28.23 KB 0644
sp-destruct.result File 6.84 KB 0644
sp-dynamic.result File 9.55 KB 0644
sp-error.result File 81.43 KB 0644
sp-fib.result File 656 B 0644
sp-lock.result File 21.45 KB 0644
sp-no-code.result File 307 B 0644
sp-prelocking.result File 7.09 KB 0644
sp-security.result File 23.51 KB 0644
sp-threads.result File 2.01 KB 0644
sp-ucs2.result File 4.78 KB 0644
sp-vars.result File 28.09 KB 0644
sp.result File 183.74 KB 0644
sp_debug.result File 735 B 0644
sp_gis.result File 829 B 0644
sp_notembedded.result File 10 KB 0644
sp_stress_case.result File 2.53 KB 0644
sp_sync.result File 3.17 KB 0644
sp_trans.result File 14.3 KB 0644
sp_trans_log.result File 891 B 0644
sp_validation.result File 34.67 KB 0644
sql_mode.result File 17.53 KB 0644
ssl-big.result File 69 B 0644
ssl-crl-revoked-crl.result File 76 B 0644
ssl-sha512.result File 376 B 0644
ssl.result File 56.89 KB 0644
ssl_8k_key.result File 42 B 0644
ssl_and_innodb.result File 183 B 0644
ssl_ca.result File 857 B 0644
ssl_cipher.result File 254 B 0644
ssl_compress.result File 56.52 KB 0644
ssl_connect.result File 10 B 0644
ssl_crl.result File 1.14 KB 0644
ssl_crl_clients-valid.result File 1.01 KB 0644
ssl_crl_clients.result File 427 B 0644
ssl_crl_clients_valid.result File 620 B 0644
ssl_crl_crlpath.result File 728 B 0644
ssl_mode.result File 1.29 KB 0644
ssl_mode_no_ssl.result File 1.06 KB 0644
ssl_verify_identity.result File 1 KB 0644
status.result File 9.83 KB 0644
status2.result File 1.35 KB 0644
status_bug17954.result File 582 B 0644
status_debug.result File 1.06 KB 0644
strict.result File 64.41 KB 0644
strict_autoinc_1myisam.result File 654 B 0644
strict_autoinc_2innodb.result File 654 B 0644
strict_autoinc_3heap.result File 654 B 0644
subquery_all.result File 258.33 KB 0644
subquery_all_bka.result File 258.65 KB 0644
subquery_all_bka_nixbnl.result File 258.42 KB 0644
subquery_bugs.result File 3.05 KB 0644
subquery_mat.result File 94.96 KB 0644
subquery_mat_all.result File 87.69 KB 0644
subquery_mat_none.result File 89.71 KB 0644
subquery_nomat_nosj.result File 258.39 KB 0644
subquery_nomat_nosj_bka.result File 258.64 KB 0644
subquery_nomat_nosj_bka_nixbnl.result File 258.21 KB 0644
subquery_none.result File 258.29 KB 0644
subquery_none_bka.result File 258.38 KB 0644
subquery_none_bka_nixbnl.result File 257.96 KB 0644
subquery_sj_all.result File 368.6 KB 0644
subquery_sj_all_bka.result File 370.21 KB 0644
subquery_sj_all_bka_nixbnl.result File 359 KB 0644
subquery_sj_all_bkaunique.result File 370.58 KB 0644
subquery_sj_dupsweed.result File 370.17 KB 0644
subquery_sj_dupsweed_bka.result File 370.42 KB 0644
subquery_sj_dupsweed_bka_nixbnl.result File 352.52 KB 0644
subquery_sj_dupsweed_bkaunique.result File 370.45 KB 0644
subquery_sj_firstmatch.result File 363.23 KB 0644
subquery_sj_firstmatch_bka.result File 363.32 KB 0644
subquery_sj_firstmatch_bka_nixbnl.result File 351.28 KB 0644
subquery_sj_firstmatch_bkaunique.result File 363.35 KB 0644
subquery_sj_innodb_all.result File 4.74 KB 0644
subquery_sj_innodb_all_bka.result File 4.93 KB 0644
subquery_sj_innodb_all_bka_nixbnl.result File 4.95 KB 0644
subquery_sj_innodb_all_bkaunique.result File 4.99 KB 0644
subquery_sj_innodb_none.result File 4.62 KB 0644
subquery_sj_innodb_none_bka.result File 4.71 KB 0644
subquery_sj_innodb_none_bka_nixbnl.result File 4.7 KB 0644
subquery_sj_innodb_none_bkaunique.result File 4.75 KB 0644
subquery_sj_loosescan.result File 370.08 KB 0644
subquery_sj_loosescan_bka.result File 370.33 KB 0644
subquery_sj_loosescan_bka_nixbnl.result File 352.5 KB 0644
subquery_sj_loosescan_bkaunique.result File 370.36 KB 0644
subquery_sj_mat.result File 378.77 KB 0644
subquery_sj_mat_bka.result File 378.85 KB 0644
subquery_sj_mat_bka_nixbnl.result File 362.06 KB 0644
subquery_sj_mat_bkaunique.result File 378.88 KB 0644
subquery_sj_mat_nosj.result File 376.23 KB 0644
subquery_sj_none.result File 374.82 KB 0644
subquery_sj_none_bka.result File 374.92 KB 0644
subquery_sj_none_bka_nixbnl.result File 367.91 KB 0644
subquery_sj_none_bkaunique.result File 374.95 KB 0644
subselect_debug.result File 409 B 0644
subselect_gis.result File 305 B 0644
subselect_innodb.result File 28.1 KB 0644
subselect_notembedded.result File 752 B 0644
sum_distinct-big.result File 2 KB 0644
sum_distinct.result File 3.14 KB 0644
symlink.result File 7.75 KB 0644
symlink_windows.result File 321 B 0644
synchronization.result File 4.05 KB 0644
sysdate_is_now.result File 76 B 0644
system_mysql_db.result File 13.5 KB 0644
system_mysql_db_refs.result File 2.96 KB 0644
table_definition_cache_functionality.result File 6.9 KB 0644
table_open_cache_functionality.result File 12.78 KB 0644
tablelock.result File 1.5 KB 0644
tablespace.result File 10.13 KB 0644
temp_pool.result File 538 B 0644
temp_table.result File 7.39 KB 0644
temporal_literal.result File 13.16 KB 0644
testdb_only.require File 45 B 0644
thread_cache_size_functionality.result File 5.26 KB 0644
timezone.result File 1.8 KB 0644
timezone2.result File 11.81 KB 0644
timezone3.result File 2.21 KB 0644
timezone4.result File 148 B 0644
timezone_grant.result File 3.76 KB 0644
trans_read_only.result File 1.03 KB 0644
trigger-compat.result File 7.75 KB 0644
trigger-trans.result File 6.46 KB 0644
trigger.result File 68.46 KB 0644
trigger_notembedded.result File 17.03 KB 0644
true.require File 7 B 0644
truncate.result File 3.58 KB 0644
truncate_coverage.result File 2.4 KB 0644
type_binary.result File 3.62 KB 0644
type_bit.result File 16.92 KB 0644
type_bit_innodb.result File 7.31 KB 0644
type_blob.result File 28.87 KB 0644
type_date.result File 18.46 KB 0644
type_datetime.result File 31.24 KB 0644
type_decimal.result File 36.1 KB 0644
type_enum.result File 101.19 KB 0644
type_float.result File 11.97 KB 0644
type_nchar.result File 1.44 KB 0644
type_newdecimal-big.result File 678 B 0644
type_newdecimal.result File 61.46 KB 0644
type_ranges.result File 17.38 KB 0644
type_set.result File 3.99 KB 0644
type_temporal_fractional.result File 635.43 KB 0644
type_temporal_upgrade.result File 9.9 KB 0644
type_time.result File 109.27 KB 0644
type_timestamp.result File 24.69 KB 0644
type_timestamp_explicit.result File 27.35 KB 0644
type_uint.result File 366 B 0644
type_varchar.result File 16.66 KB 0644
type_year.result File 7.78 KB 0644
udf.result File 16.03 KB 0644
udf_services.result File 499 B 0644
udf_skip_grants.result File 223 B 0644
union.result File 52.6 KB 0644
unsafe_binlog_innodb.result File 4.36 KB 0644
update.result File 16.63 KB 0644
upgrade.result File 4.91 KB 0644
user_limits.result File 3.54 KB 0644
user_var-binlog.result File 2.17 KB 0644
user_var.result File 15.34 KB 0644
validate_password_plugin.result File 12.09 KB 0644
varbinary.result File 3.34 KB 0644
variables-big.result File 972 B 0644
variables-notembedded.result File 5.78 KB 0644
variables-win.result File 347 B 0644
variables.result File 61.67 KB 0644
variables_community.result File 182 B 0644
variables_debug.result File 2.13 KB 0644
view.result File 178.72 KB 0644
view_alias.result File 6.19 KB 0644
view_grant.result File 76.69 KB 0644
wait_timeout.result File 1.07 KB 0644
warnings.result File 11.21 KB 0644
warnings_engine_disabled.result File 475 B 0644
windows.require File 7 B 0644
windows.result File 1.86 KB 0644
wl6219-csv.result File 7.23 KB 0644
wl6219-innodb.result File 7.27 KB 0644
wl6219-memory.result File 7.27 KB 0644
wl6219-merge.result File 5.99 KB 0644
wl6219-myisam.result File 7.27 KB 0644
wl6219-upgrade.result File 7.33 KB 0644
wl6301_1_not_windows.result File 44 B 0644
wl6301_2_not_windows.result File 46 B 0644
wl6301_3.result File 89 B 0644
wl6443_deprecation.result File 10.71 KB 0644
xa.result File 7.13 KB 0644
xml.result File 41.78 KB 0644