比如我在mysql建个表,:

DROP TABLE IF EXISTS `test_table`;
CREATE TABLE `test_table` (
`id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '自增主键',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 21 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '测试表' ROW_FORMAT = Dynamic;

有时候也能看到形如: ​​ROW_FORMAT = COMPACT​​​。
那么问题来了,分别是什么意思,有什么区别?


  1. 如果用Navicat连接mysql表,可看到如下图所示内容。那么,ROW_FORMAT可以为哪些值就很明显了。
  2. mysql创建/编辑表时的 ROW_FORMAT = Dynamic 和 Compact 有什么区别_mysql

  3. 那么究竟不同的行格式是什么含义呢?搜索了一下,发现有很好的解释的地方。直接放下面吧。
    ​​​InnoDB的行记录格式, Compact, Redundant, Compressed, Dynamic​​总之看来这就是个比较偏硬件方面的问题了,也几乎不必细究。