新mysql表中的高开销

新mysql表中的高开销,mysql,overhead,Mysql,Overhead,有人知道为什么我在新创建的表(零行)上得到131.0 MiB的开销吗? 我使用phpmy admin,我的脚本代码是 CREATE TABLE IF NOT EXISTS `mydb`.`mytable` ( `idRol` INT NOT NULL AUTO_INCREMENT , `Rol` VARCHAR(45) NOT NULL , PRIMARY KEY (`idRol`) ) ENGINE = InnoDB; 提前感谢。这可能是因为mysql在“idRol”上生成了一

有人知道为什么我在新创建的表(零行)上得到131.0 MiB的开销吗? 我使用phpmy admin,我的脚本代码是

CREATE  TABLE IF NOT EXISTS `mydb`.`mytable` (
  `idRol` INT NOT NULL AUTO_INCREMENT ,
  `Rol` VARCHAR(45) NOT NULL ,
  PRIMARY KEY (`idRol`) )
ENGINE = InnoDB;

提前感谢。

这可能是因为mysql在“idRol”上生成了一个索引


存储索引需要一些空间,但我不确定这是否是原因。这只是猜测。我不是DBA。

InnoDB使用共享表空间。这意味着默认情况下,不管数据库如何,所有表都存储在文件系统中的单个文件中。这与MyISAM不同,MyISAM将每个表存储为单个文件

InnoDB的行为是可以改变的,尽管我认为在这种情况下没有必要这样做。看


开销可能是删除的行留下的空间,InnoDB将在插入新数据时重用它。这没什么好担心的。

谢谢大家的快速响应,但是我应该担心这种情况下的高开销吗?我发现在我创建的所有表中都发生了相同的情况,感谢大家的快速响应,但我是否应该担心这种情况下的高开销?我发现在我创建的所有表中,情况都是一样的,她说表有0行。