溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Percona 5.5如何定位未使用的索引

發(fā)布時間:2021-11-02 17:32:29 來源:億速云 閱讀:159 作者:小新 欄目:MySQL數(shù)據(jù)庫

這篇文章主要為大家展示了“Percona 5.5如何定位未使用的索引”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“Percona 5.5如何定位未使用的索引”這篇文章吧。

打開userstat參數(shù),然后讓MySQL運行一段時間。
之后可以在INFORMATION_SCHEMA.INDEX_STATISTICS表中查詢到索引的使用頻率。

  1. mysql> show global variables like '%users%';

  2. +---------------+-------+

  3. | Variable_name | Value |

  4. +---------------+-------+

  5. | userstat | OFF |

  6. +---------------+-------+

  7. 1 row in set (0.00 sec)


  8. mysql> select * from information_schema.index_statistics;

  9. Empty set (0.00 sec)


  10. mysql> set global userstat=1;

  11. Query OK, 0 rows affected (0.00 sec)


  12. mysql> show global variables like '%users%';

  13. +---------------+-------+

  14. | Variable_name | Value |

  15. +---------------+-------+

  16. | userstat | ON |

  17. +---------------+-------+

  18. 1 row in set (0.00 sec)


  19. mysql> select * from information_schema.index_statistics;

  20. Empty set (0.00 sec)


  21. mysql> explain select * from emp where hiredate > '1982-01-01' and deptno = 20;

  22. +----+-------------+-------+-------+---------------------------+------------------+---------+------+------+-------------+

  23. | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |

  24. +----+-------------+-------+-------+---------------------------+------------------+---------+------+------+-------------+

  25. | 1 | SIMPLE | emp | range | idx_date_sal_job,idx_date | idx_date_sal_job | 4 | NULL | 3 | Using where |

  26. +----+-------------+-------+-------+---------------------------+------------------+---------+------+------+-------------+

  27. 1 row in set (0.00 sec)


  28. mysql> select * from information_schema.index_statistics;

  29. Empty set (0.00 sec)


  30. mysql> select * from emp where hiredate > '1982-01-01' and deptno = 20;

  31. +-------+-------+---------+------+---------------------+------+------+--------+

  32. | empno | ename | job | mgr | hiredate | sal | comm | deptno |

  33. +-------+-------+---------+------+---------------------+------+------+--------+

  34. | 7788 | SCOTT | ANALYST | 7566 | 1982-12-09 00:00:00 | 3000 | NULL | 20 |

  35. | 7876 | ADAMS | CLERK | 7788 | 1983-01-12 00:00:00 | 1100 | NULL | 20 |

  36. +-------+-------+---------+------+---------------------+------+------+--------+

  37. 2 rows in set (0.00 sec)


  38. mysql> select * from information_schema.index_statistics;

  39. +--------------+------------+------------------+-----------+

  40. | TABLE_SCHEMA | TABLE_NAME | INDEX_NAME | ROWS_READ |

  41. +--------------+------------+------------------+-----------+

  42. | test | emp | idx_date_sal_job | 3 |

  43. +--------------+------------+------------------+-----------+

  44. 1 row in set (0.04 sec)


  45. mysql> select * from emp;

  46. +-------+--------+-----------+------+---------------------+------+------+--------+

  47. | empno | ename | job | mgr | hiredate | sal | comm | deptno |

  48. +-------+--------+-----------+------+---------------------+------+------+--------+

  49. | 7369 | SMITH | CLERK | 7902 | 1980-12-17 00:00:00 | 800 | NULL | 20 |

  50. | 7499 | ALLEN | SALESMAN | 7698 | 1981-02-20 00:00:00 | 1600 | 300 | 30 |

  51. | 7521 | WARD | SALESMAN | 7698 | 1981-02-22 00:00:00 | 1250 | 500 | 30 |

  52. | 7566 | JONES | MANAGER | 7839 | 1981-04-02 00:00:00 | 2975 | NULL | 20 |

  53. | 7654 | MARTIN | SALESMAN | 7698 | 1981-09-28 00:00:00 | 1250 | 1400 | 30 |

  54. | 7698 | BLAKE | MANAGER | 7839 | 1981-05-01 00:00:00 | 2850 | NULL | 30 |

  55. | 7782 | CLARK | MANAGER | 7839 | 1981-06-09 00:00:00 | 2450 | NULL | 10 |

  56. | 7788 | SCOTT | ANALYST | 7566 | 1982-12-09 00:00:00 | 3000 | NULL | 20 |

  57. | 7839 | KING | PRESIDENT | NULL | 1981-11-17 00:00:00 | 5000 | NULL | 10 |

  58. | 7844 | TURNER | SALESMAN | 7698 | 1981-09-08 00:00:00 | 1500 | 0 | 30 |

  59. | 7876 | ADAMS | CLERK | 7788 | 1983-01-12 00:00:00 | 1100 | NULL | 20 |

  60. | 7900 | JAMES | CLERK | 7698 | 1981-12-03 00:00:00 | 950 | NULL | 30 |

  61. | 7902 | FORD | ANALYST | 7566 | 1981-12-03 00:00:00 | 3000 | NULL | 20 |

  62. | 7934 | MILLER | CLERK | 7782 | 1982-01-23 00:00:00 | 1300 | NULL | 10 |

  63. +-------+--------+-----------+------+---------------------+------+------+--------+

  64. 14 rows in set (0.00 sec)


  65. mysql> select * from information_schema.index_statistics;

  66. +--------------+------------+------------------+-----------+

  67. | TABLE_SCHEMA | TABLE_NAME | INDEX_NAME | ROWS_READ |

  68. +--------------+------------+------------------+-----------+

  69. | test | emp | PRIMARY | 14 |

  70. | test | emp | idx_date_sal_job | 3 |

  71. +--------------+------------+------------------+-----------+

  72. 2 rows in set (0.00 sec)


  73. mysql> select * from emp where hiredate > '1982-01-01' and deptno = 20;

  74. +-------+-------+---------+------+---------------------+------+------+--------+

  75. | empno | ename | job | mgr | hiredate | sal | comm | deptno |

  76. +-------+-------+---------+------+---------------------+------+------+--------+

  77. | 7788 | SCOTT | ANALYST | 7566 | 1982-12-09 00:00:00 | 3000 | NULL | 20 |

  78. | 7876 | ADAMS | CLERK | 7788 | 1983-01-12 00:00:00 | 1100 | NULL | 20 |

  79. +-------+-------+---------+------+---------------------+------+------+--------+

  80. 2 rows in set (0.00 sec)


  81. mysql> select * from emp;

  82. +-------+--------+-----------+------+---------------------+------+------+--------+

  83. | empno | ename | job | mgr | hiredate | sal | comm | deptno |

  84. +-------+--------+-----------+------+---------------------+------+------+--------+

  85. | 7369 | SMITH | CLERK | 7902 | 1980-12-17 00:00:00 | 800 | NULL | 20 |

  86. | 7499 | ALLEN | SALESMAN | 7698 | 1981-02-20 00:00:00 | 1600 | 300 | 30 |

  87. | 7521 | WARD | SALESMAN | 7698 | 1981-02-22 00:00:00 | 1250 | 500 | 30 |

  88. | 7566 | JONES | MANAGER | 7839 | 1981-04-02 00:00:00 | 2975 | NULL | 20 |

  89. | 7654 | MARTIN | SALESMAN | 7698 | 1981-09-28 00:00:00 | 1250 | 1400 | 30 |

  90. | 7698 | BLAKE | MANAGER | 7839 | 1981-05-01 00:00:00 | 2850 | NULL | 30 |

  91. | 7782 | CLARK | MANAGER | 7839 | 1981-06-09 00:00:00 | 2450 | NULL | 10 |

  92. | 7788 | SCOTT | ANALYST | 7566 | 1982-12-09 00:00:00 | 3000 | NULL | 20 |

  93. | 7839 | KING | PRESIDENT | NULL | 1981-11-17 00:00:00 | 5000 | NULL | 10 |

  94. | 7844 | TURNER | SALESMAN | 7698 | 1981-09-08 00:00:00 | 1500 | 0 | 30 |

  95. | 7876 | ADAMS | CLERK | 7788 | 1983-01-12 00:00:00 | 1100 | NULL | 20 |

  96. | 7900 | JAMES | CLERK | 7698 | 1981-12-03 00:00:00 | 950 | NULL | 30 |

  97. | 7902 | FORD | ANALYST | 7566 | 1981-12-03 00:00:00 | 3000 | NULL | 20 |

  98. | 7934 | MILLER | CLERK | 7782 | 1982-01-23 00:00:00 | 1300 | NULL | 10 |

  99. +-------+--------+-----------+------+---------------------+------+------+--------+

  100. 14 rows in set (0.00 sec)


  101. mysql> select * from information_schema.index_statistics;

  102. +--------------+------------+------------------+-----------+

  103. | TABLE_SCHEMA | TABLE_NAME | INDEX_NAME | ROWS_READ |

  104. +--------------+------------+------------------+-----------+

  105. | test | emp | PRIMARY | 28 |

  106. | test | emp | idx_date_sal_job | 6 |

  107. +--------------+------------+------------------+-----------+

  108. 2 rows in set (0.00 sec)

以上是“Percona 5.5如何定位未使用的索引”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI