在Linux上,我們經常需要查詢MySQL的表大小,這對于管理數據庫和優化查詢性能都很有幫助。
mysql -uusername -ppassword -Ddatabasename -e "SELECT table_name AS 'Table',
round(((data_length + index_length) / 1024 / 1024), 2) 'Size in MB'
FROM information_schema.TABLES
WHERE table_schema = 'databasename'
ORDER BY (data_length + index_length) DESC;"
在這個命令中,我們使用了MySQL的information_schema庫來查詢表的大小,并按照大小進行降序排列。需要注意的是,我們需要替換命令中的“username”、“password”和“databasename”為實際的數據庫用戶名、密碼和數據庫名稱。
此外,我們還可以使用以下命令查詢特定表的大小:
mysql -uusername -ppassword -Ddatabasename -e "SELECT table_name AS 'Table',
round(((data_length + index_length) / 1024 / 1024), 2) 'Size in MB'
FROM information_schema.TABLES
WHERE table_schema = 'databasename' AND table_name = 'tablename';"
在這個命令中,我們通過添加“table_name = 'tablename'”限定了查詢結果只包括指定的表。
通過以上命令,我們可以方便地查詢MySQL表的大小,并進行相關的管理和優化工作。