วิธีตรวจสอบขนาดฐานข้อมูล MySQL ใน Linux
ในบทความนี้ ฉันจะแสดงวิธีตรวจสอบขนาดของฐานข้อมูลและตาราง MySQL/MariaDB ผ่านทางเชลล์ MySQL คุณจะได้เรียนรู้วิธีกำหนดขนาดที่แท้จริงของไฟล์ฐานข้อมูลบนดิสก์รวมถึงขนาดของข้อมูลที่มีอยู่ในฐานข้อมูล
อ่านเพิ่มเติม: 20 คำสั่ง MySQL (Mysqladmin) สำหรับการดูแลฐานข้อมูลใน Linux
ตามค่าเริ่มต้น MySQL/MariaDB จะจัดเก็บข้อมูลทั้งหมดไว้ในระบบไฟล์ และขนาดของข้อมูลที่มีอยู่ในฐานข้อมูลอาจแตกต่างจากขนาดจริงของข้อมูล Mysql บนดิสก์ที่เราจะได้เห็นในภายหลัง
นอกจากนี้ MySQL ยังใช้ฐานข้อมูลเสมือน information_schema เพื่อจัดเก็บข้อมูลเกี่ยวกับฐานข้อมูลของคุณและการตั้งค่าอื่นๆ คุณสามารถสอบถามเพื่อรวบรวมข้อมูลเกี่ยวกับขนาดของฐานข้อมูลและตารางดังภาพ
mysql -u root -p
MariaDB [(none)]> SELECT table_schema AS "Database Name",
ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) AS "Size in (MB)"
FROM information_schema.TABLES
GROUP BY table_schema;
หากต้องการทราบขนาดของฐานข้อมูล MySQL เดียวที่เรียกว่า rcubemail (ซึ่งแสดงขนาดของตารางทั้งหมดในนั้น) ให้ใช้แบบสอบถาม mysql ต่อไปนี้
MariaDB [(none)]> SELECT table_name AS "Table Name",
ROUND(((data_length + index_length) / 1024 / 1024), 2) AS "Size in (MB)"
FROM information_schema.TABLES
WHERE table_schema = "rcubemail"
ORDER BY (data_length + index_length) DESC;
สุดท้าย หากต้องการทราบขนาดที่แท้จริงของไฟล์ฐานข้อมูล MySQL ทั้งหมดบนดิสก์ (ระบบไฟล์) ให้รันคำสั่ง du ด้านล่าง
du -h /var/lib/mysql
คุณอาจต้องการอ่านบทความที่เกี่ยวข้องกับ MySQL ต่อไปนี้
- 4 เครื่องมือ Commandline ที่มีประโยชน์ในการตรวจสอบประสิทธิภาพ MySQL ใน Linux
- 12 แนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัย MySQL/MariaDB สำหรับ Linux
หากมีข้อสงสัยหรือแนวคิดเพิ่มเติมที่คุณต้องการแชร์เกี่ยวกับหัวข้อนี้ ให้ใช้แบบฟอร์มคำติชมด้านล่าง