mysql - 计算的mysql5表大小与ibdata不同

标签 mysql database size

我正在尝试计算 mysql 中所有表的总大小:

SELECT sum( data_length + index_length ) / 1024 / 1024 "Mb" FROM information_schema.TABLES;

+--------------+
| Mb           |
+--------------+
| 942.02298263 | 
+--------------+

/opt/mysql5/data/ibdata 的大小为 3.1 GB。为什么两个数字有这么大的差别?

最佳答案

ibdata 是 InnoDB 基础架构中最繁忙的文件。它包含许多不同类别的信息。

  • 表格数据
  • 表索引
  • 表元数据
  • MVCC 数据

您可以看到图形表示 here .

以下是有关此主题的讨论的几个链接。

您选择什么(如果有)行动显然取决于您的设置和目标。不过,我会考虑调整 my.cnf 文件中的 inndb_log_file_size,因为它们很快就会变得非常大。

关于mysql - 计算的mysql5表大小与ibdata不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22046990/

相关文章:

linux获取某个文件夹及其子文件夹的大小到一定深度

mysql - 选择 Mysql 数据类型

mysql - 如何在简单 OData 客户端中使用联接从两个表中检索数据?

database - hadoop vs teradata 有什么区别

java - 如何检查 double 是否为空?

elasticsearch - Elasticsearch 总索引大小

mysql - 如何使用 Laravel Eloquent ORM 将数组值插入到我的表中?

mysql - 我可以使用 yii CSqlDataProvider 执行两个或多个 sql 语句吗?

php - Laravel seeder 是否覆盖整个表

java - 当 HashMap 或 HashSet 达到最大容量时会发生什么?