驽马十驾 驽马十驾

驽马十驾,功在不舍

目录
MySQL查看数据库占用空间大小和批量删除脚本的生成
/    

MySQL查看数据库占用空间大小和批量删除脚本的生成

开篇

之前使用skywalking因为对其数据占用评估不足,差点导致了生产事故,这里记录下当时使用到的相关排查和处理的 SQL

正文

查看某个数据库中每个数据表占据空间的大小

SELECT
	table_schema,
	SUM( AVG_ROW_LENGTH * TABLE_ROWS + INDEX_LENGTH )/ 1024 / 1024 AS total_mb 
FROM
	information_schema.TABLES 
GROUP BY
	table_schemas

假如你此时想删除某个数据库(我是skywalking)的数据,可以通过如下SQL命令生成Truncate语句

SELECT
	CONCAT( 'truncate table ', TABLE_NAME, ';' ) 
FROM
	information_schema.TABLES 
WHERE
	TABLE_SCHEMA = 'skywalking'

结尾

踩了坑,一定要记得反思和总结!

不积跬步,无以至千里。不积小流,无以成江海。