Helpex - Trao đổi & giúp đỡ Đăng nhập

Tìm hiểu thống kê sử dụng của các chỉ số MySQL?

Hoàng Ðình Tuấn
· 17:15 03/01/2013
15 giờ trước

Có thể tìm hiểu tần suất sử dụng một chỉ mục của bảng MySQL không?

Tôi có một số chỉ số cho một bảng và tôi muốn tìm hiểu xem có chỉ số nào không được MySQL sử dụng hay không.

25 hữu ích 0 bình luận 15k xem chia sẻ
Trần Quốc Trường
· 17:48 03/01/2013
17:48:18 03/01/2013

LƯU Ý: Câu trả lời này không còn hợp lệ kể từ 5.5.3!

Xem https://stackoverflow.com/a/43205887/1251127

Câu trả lời gốc bên dưới.

Hiện tại, MySQL không cung cấp số liệu thống kê về việc sử dụng chỉ mục.

Một cách để tự tạo các số liệu thống kê đó là ghi lại tất cả các truy vấn (Hãy cẩn thận với i / o bổ sung ở đây) và phân tích cú pháp. Percona có một công cụ tuyệt vời cho việc này, pt-index-use .

5 hữu ích 1 bình luận chia sẻ
Đặng Phượng Vy
· 11:25 04/04/2017
11:25:59 04/04/2017

Vâng, đúng vậy. Bạn nên truy vấn Giản đồ hiệu suất :

select * from performance_schema.table_io_waits_summary_by_index_usage
where object_schema = 'your_schema'

Cột count_star hiển thị số lần mỗi chỉ mục đã được sử dụng kể từ khi khởi động MySQL. Nếu bạn thêm những thứ sau, bạn sẽ có các chỉ mục chưa bao giờ được sử dụng:

and count_star = 0
38 hữu ích 2 bình luận chia sẻ
Tạ Hoàng Hà
· 06:28 16/04/2017
06:28:32 16/04/2017

Ngoài câu trả lời của @ user1970667, bạn cũng có thể sử dụng:

select * from sys.schema_unused_indexes;

để có được danh sách các chỉ mục không sử dụng.

9 hữu ích 0 bình luận chia sẻ
loading
Không tìm thấy câu trả lời bạn tìm kiếm? Duyệt qua các câu hỏi được gắn thẻ mysql indexing statistics usage statistics , hoặc hỏi câu hỏi của bạn.

Có thể bạn quan tâm