Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm thế nào để tìm bảng lớn nhất trong cơ sở dữ liệu MySQL?

Đôi khi bạn có thể cần theo dõi bảng lớn nhất trong cơ sở dữ liệu MySQL để có thể tối ưu hóa nó. Đây là một truy vấn SQL để tìm bảng lớn nhất trong cơ sở dữ liệu MySQL. Nói cách lớn nhất, ý tôi là kích thước trên đĩa chứ không phải số lượng bản ghi. Bạn có thể sử dụng truy vấn SQL sau để lấy nó. Kích thước bảng MySQL bao gồm 2 phần:

1. data_length - kích thước của các bản ghi trong bảng

2. index_length - kích thước của chỉ mục bảng

Đây là các biến hệ thống lưu trữ thông tin dưới dạng số byte. Truy vấn bên dưới thêm 2 biến cho bảng. Nó chuyển đổi số byte kết quả thành mega byte (MB) để dễ hiểu hơn. Chỉ cần thay thế $ DB_NAME bên dưới để sử dụng nó.

Để có được bảng lớn nhất trong cơ sở dữ liệu MySQL (cơ sở dữ liệu cụ thể), hãy sử dụng:

SELECT table_name AS "Table", round(((data_length + index_length) / 1024 / 1024), 2) "Table size in MB" FROM information_schema.TABLES WHERE table_schema = "$DB_NAME" order by data_length+index_lenght desc limit 1;

Để có được bảng lớn nhất trong cơ sở dữ liệu MySQL (trong số tất cả các cơ sở dữ liệu), hãy sử dụng:

SELECT table_name AS "Table", round(((data_length + index_length) / 1024 / 1024), 2) "Table size in MB" FROM information_schema.TABLES order by data_length+index_lenght desc limit 1;

Các truy vấn này có thể mất thời gian dựa trên số lượng bảng.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sử dụng tham số giới hạn nhiều lần

  2. Làm cách nào để thêm cột mới vào bảng MYSQL?

  3. Di chuyển Cơ sở dữ liệu MySQL từ Amazon RDS sang DigitalOcean

  4. MySQL - Nhận Chi phí Truy vấn Cuối cùng Sử dụng TÌNH TRẠNG HIỂN THỊ NHƯ ‘Last_Query_Cost’

  5. MySQL:@variable so với biến. Có gì khác biệt?