mirror of
https://github.com/MariaDB/server.git
synced 2025-05-28 13:01:41 +03:00

bmove_allign -> bmove_align Added OLAP function ROLLUP Split mysql_fix_privilege_tables to a script and a .sql data file Added new (MEMROOT*) functions to avoid calling current_thd() when creating some common objects. Added table_alias_charset, for easier --lower-case-table-name handling Better SQL_MODE handling (Setting complex options also sets sub options) New (faster) assembler string functions for x86
154 lines
3.4 KiB
Plaintext
154 lines
3.4 KiB
Plaintext
drop table if exists test.t1,mysqltest.t1,mysqltest.t2;
|
|
reset query cache;
|
|
flush status;
|
|
create database if not exists mysqltest;
|
|
create table mysqltest.t1 (a int,b int,c int);
|
|
create table mysqltest.t2 (a int,b int,c int);
|
|
insert into mysqltest.t1 values (1,1,1),(2,2,2);
|
|
insert into mysqltest.t2 values (3,3,3);
|
|
create table test.t1 (a char (10));
|
|
insert into test.t1 values ("test.t1");
|
|
select * from t1;
|
|
a
|
|
test.t1
|
|
select * from t1;
|
|
a b c
|
|
1 1 1
|
|
2 2 2
|
|
select a from t1;
|
|
a
|
|
1
|
|
2
|
|
select c from t1;
|
|
c
|
|
1
|
|
2
|
|
select * from t2;
|
|
a b c
|
|
3 3 3
|
|
select * from mysqltest.t1,test.t1;
|
|
a b c a
|
|
1 1 1 test.t1
|
|
2 2 2 test.t1
|
|
show status like "Qcache_queries_in_cache";
|
|
Variable_name Value
|
|
Qcache_queries_in_cache 6
|
|
show status like "Qcache_hits%";
|
|
Variable_name Value
|
|
Qcache_hits 0
|
|
grant SELECT on mysqltest.* to mysqltest_1@localhost;
|
|
grant SELECT on mysqltest.t1 to mysqltest_2@localhost;
|
|
grant SELECT on test.t1 to mysqltest_2@localhost;
|
|
grant SELECT(a) on mysqltest.t1 to mysqltest_3@localhost;
|
|
select "user1";
|
|
user1
|
|
user1
|
|
select * from t1;
|
|
a b c
|
|
1 1 1
|
|
2 2 2
|
|
select a from t1 ;
|
|
a
|
|
1
|
|
2
|
|
select c from t1;
|
|
c
|
|
1
|
|
2
|
|
show status like "Qcache_queries_in_cache";
|
|
Variable_name Value
|
|
Qcache_queries_in_cache 6
|
|
show status like "Qcache_hits";
|
|
Variable_name Value
|
|
Qcache_hits 3
|
|
show status like "Qcache_not_cached";
|
|
Variable_name Value
|
|
Qcache_not_cached 1
|
|
select "user2";
|
|
user2
|
|
user2
|
|
select * from t1;
|
|
a b c
|
|
1 1 1
|
|
2 2 2
|
|
select a from t1;
|
|
a
|
|
1
|
|
2
|
|
select c from t1;
|
|
c
|
|
1
|
|
2
|
|
select * from mysqltest.t1,test.t1;
|
|
a b c a
|
|
1 1 1 test.t1
|
|
2 2 2 test.t1
|
|
select * from t2;
|
|
ERROR 42000: select command denied to user: 'mysqltest_2@localhost' for table 't2'
|
|
show status like "Qcache_queries_in_cache";
|
|
Variable_name Value
|
|
Qcache_queries_in_cache 6
|
|
show status like "Qcache_hits";
|
|
Variable_name Value
|
|
Qcache_hits 7
|
|
show status like "Qcache_not_cached";
|
|
Variable_name Value
|
|
Qcache_not_cached 3
|
|
select "user3";
|
|
user3
|
|
user3
|
|
select * from t1;
|
|
ERROR 42000: select command denied to user: 'mysqltest_3@localhost' for column 'b' in table 't1'
|
|
select a from t1;
|
|
a
|
|
1
|
|
2
|
|
select c from t1;
|
|
ERROR 42000: SELECT command denied to user: 'mysqltest_3@localhost' for column 'c' in table 't1'
|
|
select * from t2;
|
|
ERROR 42000: select command denied to user: 'mysqltest_3@localhost' for table 't2'
|
|
select mysqltest.t1.c from test.t1,mysqltest.t1;
|
|
ERROR 42000: SELECT command denied to user: 'mysqltest_3@localhost' for column 'c' in table 't1'
|
|
show status like "Qcache_queries_in_cache";
|
|
Variable_name Value
|
|
Qcache_queries_in_cache 6
|
|
show status like "Qcache_hits";
|
|
Variable_name Value
|
|
Qcache_hits 7
|
|
show status like "Qcache_not_cached";
|
|
Variable_name Value
|
|
Qcache_not_cached 8
|
|
select "user4";
|
|
user4
|
|
user4
|
|
select a from t1;
|
|
ERROR 42000: No Database Selected
|
|
select * from mysqltest.t1,test.t1;
|
|
a b c a
|
|
1 1 1 test.t1
|
|
2 2 2 test.t1
|
|
select a from mysqltest.t1;
|
|
a
|
|
1
|
|
2
|
|
select a from mysqltest.t1;
|
|
a
|
|
1
|
|
2
|
|
show status like "Qcache_queries_in_cache";
|
|
Variable_name Value
|
|
Qcache_queries_in_cache 8
|
|
show status like "Qcache_hits";
|
|
Variable_name Value
|
|
Qcache_hits 8
|
|
show status like "Qcache_not_cached";
|
|
Variable_name Value
|
|
Qcache_not_cached 9
|
|
delete from mysql.user where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
|
|
delete from mysql.db where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
|
|
delete from mysql.tables_priv where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
|
|
delete from mysql.columns_priv where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
|
|
flush privileges;
|
|
drop table test.t1,mysqltest.t1,mysqltest.t2;
|
|
drop database mysqltest;
|