Bagaimana cara mendapatkan ukuran database mysql?
Misalkan database target disebut "v3".
Bagaimana cara mendapatkan ukuran database mysql?
Misalkan database target disebut "v3".
Jawaban:
Jalankan permintaan ini dan Anda mungkin akan mendapatkan apa yang Anda cari:
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;
Permintaan ini berasal dari forum mysql , di mana ada instruksi yang lebih komprehensif yang tersedia.
FROM
dan GROUP
: where table_schema='DATABASE_NAME'
- ganti DATABASE_NAME
dengan basis data Anda.
Syntax error: {column title} (double quoted text) is not valid input here.
kesalahan. Judul kolom harus dibungkus dengan tanda centang. Yaitu Database Name
.
Itu dapat ditentukan dengan menggunakan perintah MySQL berikut
SELECT table_schema AS "Database", SUM(data_length + index_length) / 1024 / 1024 AS "Size (MB)" FROM information_schema.TABLES GROUP BY table_schema
Hasil
Database Size (MB)
db1 11.75678253
db2 9.53125000
test 50.78547382
Dapatkan hasil dalam 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
Atau Anda dapat langsung masuk ke direktori data dan memeriksa ukuran gabungan v3.myd, v3. myi dan v3. file frm (untuk myisam) atau v3.idb & v3.frm (untuk innodb).
Untuk mendapatkan hasil dalam MB:
SELECT
SUM(ROUND(((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024), 2)) AS "SIZE IN MB"
FROM INFORMATION_SCHEMA.TABLES
WHERE
TABLE_SCHEMA = "SCHEMA-NAME";
Untuk mendapatkan hasil dalam 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 |
+----------+----------------+
Jika tidak diinstal, ini dapat diinstal dengan menginstal mysql-utils
paket yang harus dikemas oleh sebagian besar distribusi utama.
Login pertama ke MySQL menggunakan
mysql -u username -p
Perintah untuk Menampilkan ukuran Database tunggal beserta tabelnya dalam 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;
Ubah database_name menjadi Database Anda
Perintah untuk Menampilkan semua Database dengan ukurannya dalam 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;
Pergilah ke direktori data mysql dan jalankan du -h --max-depth=1 | grep databasename