查看mysql某个数据库多少张表以及占用的空间

时间:2023-01-27 03:22:02

MySQL数据库占用的空间、表记录的行数在MySQL的 information_schema 数据库。

在该库中有一个 TABLES 表,这个表主要字段分别是:

TABLE_SCHEMA : 数据库名
TABLE_NAME:表名
ENGINE:所使用的存储引擎
TABLES_ROWS:记录数
DATA_LENGTH:数据大小
INDEX_LENGTH:索引大小

统计多少张表

SELECT COUNT(1) FROM information_schema.tables t WHERE t.table_schema = 'test';

统计占用多少空间

SELECT CONCAT(ROUND(SUM(DATA_LENGTH/1024/1024),2),'MB') AS DATA FROM information_schema.TABLES WHERE table_schema='test';

解锁

第一种

show processlist;

找到锁进程,kill id ;

 

第二种

mysql>UNLOCKTABLES;

锁表

锁定数据表,避免在备份过程中,表被更新

mysql>LOCK TABLES tbl_nameREAD;

为表增加一个写锁定:

mysql>LOCK TABLES tbl_nameWRITE;