質問
私は新しく作成されたテーブル(ゼロ行)で131.0、MIBのオーバーヘッドを取得し、なぜ誰もが知っていますか? イムphpmy管理を使用して、私のスクリプトのコードは、
でありますCREATE TABLE IF NOT EXISTS `mydb`.`mytable` (
`idRol` INT NOT NULL AUTO_INCREMENT ,
`Rol` VARCHAR(45) NOT NULL ,
PRIMARY KEY (`idRol`) )
ENGINE = InnoDB;
事前に感謝します。
解決
InnoDBは共有テーブルスペースを使用しています。これはデフォルトのあたりに関係なく、データベースのすべてのテーブルは、ファイルシステム内の単一のファイルに格納されていることを意味します。これは、単一のファイルとして各テーブルを格納する例のMyISAM用とは異なる。
私はそれがこのケースでは本当に必要はないと思うが、のInnoDBの動作は、変更することができます。 ごとの表表領域の使用を参照してください。
オーバーヘッドは、おそらく削除された行によって残された空間で、新しいデータを挿入する際InnoDBは、それを再利用します。それは心配することは何もないです。
他のヒント
MySQLは 'idRol'
上のインデックスを生成したので、それはあるかもしれませんインデックスを格納することは、いくつかのスペースがかかりますが、私はこれが理由であるかどうかわからないです。それは唯一の推測です。私は、DBAはないよ。
所属していません StackOverflow