Làm thế nào để có được kích thước của cơ sở dữ liệu mysql?
Giả sử cơ sở dữ liệu đích được gọi là "v3".
Làm thế nào để có được kích thước của cơ sở dữ liệu mysql?
Giả sử cơ sở dữ liệu đích được gọi là "v3".
Câu trả lời:
Chạy truy vấn này và bạn có thể sẽ nhận được những gì bạn đang tìm kiếm:
SELECT table_schema "DB Name",
ROUND(SUM(data_length + index_length) / 1024 / 1024, 1) "DB Size in MB"
FROM information_schema.tables
GROUP BY table_schema;
Truy vấn này đến từ các diễn đàn mysql , nơi có các hướng dẫn toàn diện hơn có sẵn.
FROM
và GROUP
dòng: where table_schema='DATABASE_NAME'
- thay thế DATABASE_NAME
bằng cơ sở dữ liệu của bạn.
Syntax error: {column title} (double quoted text) is not valid input here.
lỗi. Các tiêu đề cột nên được bọc trong dấu tick. Tức Database Name
.
Nó có thể được xác định bằng cách sử dụng lệnh MySQL
SELECT table_schema AS "Database", SUM(data_length + index_length) / 1024 / 1024 AS "Size (MB)" FROM information_schema.TABLES GROUP BY table_schema
Kết quả
Database Size (MB)
db1 11.75678253
db2 9.53125000
test 50.78547382
Nhận kết quả tính bằng GB
SELECT table_schema AS "Database", SUM(data_length + index_length) / 1024 / 1024 / 1024 AS "Size (GB)" FROM information_schema.TABLES GROUP BY table_schema
Ngoài ra, nếu bạn đang sử dụng phpMyAdmin
, bạn có thể xem tổng số kích thước bảng trong phần chân trang của structure
tab cơ sở dữ liệu của bạn . Kích thước cơ sở dữ liệu thực tế có thể hơi lớn hơn kích thước này, tuy nhiên nó có vẻ phù hợp với table_schema
phương pháp được đề cập ở trên.
Ảnh chụp màn hình:
Ngoài ra, bạn có thể trực tiếp nhảy vào thư mục dữ liệu và kiểm tra kích thước kết hợp của v3.myd, v3. myi và v3. tập tin frm (cho myisam) hoặc v3.idb & v3.frm (cho innodb).
Để có kết quả bằng MB:
SELECT
SUM(ROUND(((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024), 2)) AS "SIZE IN MB"
FROM INFORMATION_SCHEMA.TABLES
WHERE
TABLE_SCHEMA = "SCHEMA-NAME";
Để có kết quả tính bằng GB:
SELECT
SUM(ROUND(((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024 / 1024), 2)) AS "SIZE IN GB"
FROM INFORMATION_SCHEMA.TABLES
WHERE
TABLE_SCHEMA = "SCHEMA-NAME";
mysqldiskusage --server=root:MyPassword@localhost pics
+----------+----------------+
| db_name | total |
+----------+----------------+
| pics | 1,179,131,029 |
+----------+----------------+
Nếu không được cài đặt, điều này có thể được cài đặt bằng cách cài đặt mysql-utils
gói cần được đóng gói bởi hầu hết các bản phân phối chính.
Lần đầu tiên đăng nhập vào MySQL bằng
mysql -u username -p
Lệnh hiển thị kích thước của một Cơ sở dữ liệu duy nhất cùng với bảng của nó tính bằng MB.
SELECT table_name AS "Table",
ROUND(((data_length + index_length) / 1024 / 1024), 2) AS "Size (MB)"
FROM information_schema.TABLES
WHERE table_schema = "database_name"
ORDER BY (data_length + index_length) DESC;
Thay đổi cơ sở dữ liệu thành cơ sở dữ liệu của bạn
Lệnh hiển thị tất cả các cơ sở dữ liệu với kích thước tính bằng MB.
SELECT table_schema AS "Database",
ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) AS "Size (MB)"
FROM information_schema.TABLES
GROUP BY table_schema;
Đi vào thư mục dữ liệu mysql và chạy du -h --max-depth=1 | grep databasename