NoteDeep
本节介绍使用InnoDB表时的最佳实践。
  • 指定最常查询的一个或多个列为主键,如果没有明显的主键,则指定自动递增值。
  • 根据这些表中相同的ID值定义外键,并在每个表中声明具有相同数据类型的列。添加外键确保引用的列被索引,这可以提高性能和完整性
  • 关闭自动提交。
  • 使用事务原子化一组相关的DML操作。
  • 不使用LOCK TABLES语句。 InnoDB可以处理多个会话,一次读取和写入同一个表,不会牺牲可靠性或高性能。
  • 启用innodb_file_per_table选项将单个表的数据和索引放入单独的文件中,而不是在单个系统表空间中。 使用此设置需要使用其他一些功能,例如table compression(表压缩)fast truncation快速截断
  • 评估数据和访问模式是否受益于CREATE TABLE语句上的InnoDB表压缩功能(ROW_FORMAT = COMPRESSED)。 可以压缩InnoDB表而不牺牲读/写能力。
  • 使用选项--sql_mode = NO_ENGINE_SUBSTITUTION运行服务器,防止使用不同的存储引擎创建表

评论列表