近期整理数据库堆积了三年多的数据,将19年之前的数据(大概十几万条,也不是很多居然……)删除,只保留今年的数据,也仅仅释放出了500MB左右。
第一步:先查看了一下占用磁盘空间较多的几张表
SELECT TABLE_NAME, CONCAT(TRUNCATE(data_length/1024/1024,2),' MB') AS data_size,
CONCAT(TRUNCATE(index_length/1024/1024,2),' MB') AS index_size
FROM information_schema.tables WHERE TABLE_SCHEMA = 'database_name'
GROUP BY TABLE_NAME ORDER BY data_length DESC
(PS:以后要仔细研究,详细说明,不马虎了,打脸打脸打脸)
mysql在安装成功后,会有四个系统自带的database(可以通过mysql命令>show databases;查看):
| information_schema |
| mysql |
| performance_schema |
| sys |
而查看数据库占用空间(包括数据data和索引index)则是查看information_schema。而关于这四张表的解释,可以参考