grant_cache.result
上传用户:romrleung
上传日期:2022-05-23
资源大小:18897k
文件大小:5k
源码类别:

MySQL数据库

开发平台:

Visual C++

  1. drop table if exists test.t1,mysqltest.t1,mysqltest.t2;
  2. drop database if exists mysqltest;
  3. set GLOBAL query_cache_size=1355776;
  4. reset query cache;
  5. flush status;
  6. show grants for current_user;
  7. Grants for root@localhost
  8. GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION
  9. show grants;
  10. Grants for root@localhost
  11. GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION
  12. create database if not exists mysqltest;
  13. create table mysqltest.t1 (a int,b int,c int);
  14. create table mysqltest.t2 (a int,b int,c int);
  15. insert into mysqltest.t1 values (1,1,1),(2,2,2);
  16. insert into mysqltest.t2 values (3,3,3);
  17. create table test.t1 (a char (10));
  18. insert into test.t1 values ("test.t1");
  19. select * from t1;
  20. a
  21. test.t1
  22. select * from t1;
  23. a b c
  24. 1 1 1
  25. 2 2 2
  26. select a from t1;
  27. a
  28. 1
  29. 2
  30. select c from t1;
  31. c
  32. 1
  33. 2
  34. select * from t2;
  35. a b c
  36. 3 3 3
  37. select * from mysqltest.t1,test.t1;
  38. a b c a
  39. 1 1 1 test.t1
  40. 2 2 2 test.t1
  41. show status like "Qcache_queries_in_cache";
  42. Variable_name Value
  43. Qcache_queries_in_cache 6
  44. show status like "Qcache_hits%";
  45. Variable_name Value
  46. Qcache_hits 0
  47. grant SELECT on mysqltest.* to mysqltest_1@localhost;
  48. grant SELECT on mysqltest.t1 to mysqltest_2@localhost;
  49. grant SELECT on test.t1 to mysqltest_2@localhost;
  50. grant SELECT(a) on mysqltest.t1 to mysqltest_3@localhost;
  51. show grants for current_user();
  52. Grants for mysqltest_1@localhost
  53. GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
  54. GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
  55. show status like "Qcache_queries_in_cache";
  56. Variable_name Value
  57. Qcache_queries_in_cache 6
  58. show status like "Qcache_hits";
  59. Variable_name Value
  60. Qcache_hits 0
  61. show status like "Qcache_not_cached";
  62. Variable_name Value
  63. Qcache_not_cached 0
  64. select "user1";
  65. user1
  66. user1
  67. show status like "Qcache_queries_in_cache";
  68. Variable_name Value
  69. Qcache_queries_in_cache 6
  70. show status like "Qcache_hits";
  71. Variable_name Value
  72. Qcache_hits 0
  73. show status like "Qcache_not_cached";
  74. Variable_name Value
  75. Qcache_not_cached 1
  76. select * from t1;
  77. a b c
  78. 1 1 1
  79. 2 2 2
  80. show status like "Qcache_queries_in_cache";
  81. Variable_name Value
  82. Qcache_queries_in_cache 6
  83. show status like "Qcache_hits";
  84. Variable_name Value
  85. Qcache_hits 1
  86. show status like "Qcache_not_cached";
  87. Variable_name Value
  88. Qcache_not_cached 1
  89. select a from t1 ;
  90. a
  91. 1
  92. 2
  93. show status like "Qcache_queries_in_cache";
  94. Variable_name Value
  95. Qcache_queries_in_cache 6
  96. show status like "Qcache_hits";
  97. Variable_name Value
  98. Qcache_hits 2
  99. show status like "Qcache_not_cached";
  100. Variable_name Value
  101. Qcache_not_cached 1
  102. select c from t1;
  103. c
  104. 1
  105. 2
  106. show status like "Qcache_queries_in_cache";
  107. Variable_name Value
  108. Qcache_queries_in_cache 6
  109. show status like "Qcache_hits";
  110. Variable_name Value
  111. Qcache_hits 3
  112. show status like "Qcache_not_cached";
  113. Variable_name Value
  114. Qcache_not_cached 1
  115. show grants for current_user();
  116. Grants for @localhost
  117. GRANT USAGE ON *.* TO ''@'localhost'
  118. select "user2";
  119. user2
  120. user2
  121. select * from t1;
  122. a b c
  123. 1 1 1
  124. 2 2 2
  125. select a from t1;
  126. a
  127. 1
  128. 2
  129. select c from t1;
  130. c
  131. 1
  132. 2
  133. select * from mysqltest.t1,test.t1;
  134. a b c a
  135. 1 1 1 test.t1
  136. 2 2 2 test.t1
  137. select * from t2;
  138. ERROR 42000: SELECT command denied to user 'mysqltest_2'@'localhost' for table 't2'
  139. show status like "Qcache_queries_in_cache";
  140. Variable_name Value
  141. Qcache_queries_in_cache 6
  142. show status like "Qcache_hits";
  143. Variable_name Value
  144. Qcache_hits 7
  145. show status like "Qcache_not_cached";
  146. Variable_name Value
  147. Qcache_not_cached 2
  148. select "user3";
  149. user3
  150. user3
  151. select * from t1;
  152. ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for column 'b' in table 't1'
  153. select a from t1;
  154. a
  155. 1
  156. 2
  157. select c from t1;
  158. ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for column 'c' in table 't1'
  159. select * from t2;
  160. ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for table 't2'
  161. select mysqltest.t1.c from test.t1,mysqltest.t1;
  162. ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for column 'c' in table 't1'
  163. show status like "Qcache_queries_in_cache";
  164. Variable_name Value
  165. Qcache_queries_in_cache 6
  166. show status like "Qcache_hits";
  167. Variable_name Value
  168. Qcache_hits 7
  169. show status like "Qcache_not_cached";
  170. Variable_name Value
  171. Qcache_not_cached 7
  172. select "user4";
  173. user4
  174. user4
  175. show grants;
  176. Grants for mysqltest_1@localhost
  177. GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
  178. GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
  179. select a from t1;
  180. ERROR 3D000: No database selected
  181. select * from mysqltest.t1,test.t1;
  182. a b c a
  183. 1 1 1 test.t1
  184. 2 2 2 test.t1
  185. select a from mysqltest.t1;
  186. a
  187. 1
  188. 2
  189. select a from mysqltest.t1;
  190. a
  191. 1
  192. 2
  193. show status like "Qcache_queries_in_cache";
  194. Variable_name Value
  195. Qcache_queries_in_cache 8
  196. show status like "Qcache_hits";
  197. Variable_name Value
  198. Qcache_hits 8
  199. show status like "Qcache_not_cached";
  200. Variable_name Value
  201. Qcache_not_cached 8
  202. set names binary;
  203. delete from mysql.user where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
  204. delete from mysql.db where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
  205. delete from mysql.tables_priv where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
  206. delete from mysql.columns_priv where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
  207. flush privileges;
  208. drop table test.t1,mysqltest.t1,mysqltest.t2;
  209. drop database mysqltest;
  210. set GLOBAL query_cache_size=default;