如何找到 MySQL 表中当前的大小(内存中)?


要得到某个表的当前大小,使用以下命令,它会显示关于表的详细信息,包括大小 −

show table status like ‘yourTableName’\G

首先让我们创建一个表 −

mysql> create table DemoTable
   -> (
   -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> CustomerName varchar(20),
   -> CustomerAge int,
   -> CustomerCountryName varchar(20)
   -> );
Query OK, 0 rows affected (0.75 sec)

使用 insert 命令在表中插入一些记录 −

mysql> insert into DemoTable(CustomerName,CustomerAge,CustomerCountryName) values('John',24,'US');
Query OK, 1 row affected (0.23 sec)

mysql> insert into DemoTable(CustomerName,CustomerAge,CustomerCountryName) values('Carol',22,'UK');
Query OK, 1 row affected (0.14 sec)

使用 select 语句显示表中的所有记录 −

mysql> select *from DemoTable;

输出

+----+--------------+-------------+---------------------+
| Id | CustomerName | CustomerAge | CustomerCountryName |
+----+--------------+-------------+---------------------+
| 1  | John         | 24          | US                  |
| 2  | Carol        | 22          | UK                  |
+----+--------------+-------------+---------------------+
2 rows in set (0.00 sec)

这里有一个查询,用于找到某个表在内存中的当前大小 −

mysql> show table status like 'DemoTable'\G

输出

*************************** 1. row ***************************
Name: DemoTable
Engine: InnoDB
Version: 10
Row_format: Dynamic
Rows: 0
Avg_row_length: 0
Data_length: 16384
Max_data_length: 0
Index_length: 0
Data_free: 0
Auto_increment: NULL
Create_time: 2019-06-10 16:35:55
Update_time: NULL
Check_time: NULL
Collation: utf8_unicode_ci
Checksum: NULL
Create_options:
Comment:
1 row in set (0.01 sec)

更新于:30-7-2019

195 次浏览

启动您的 职业

完成课程获得认证

开始
广告