在使用 InnoDB 数据库之前我应该​​知道什么?

Jac*_*cco 10 mysql innodb

在使 InnoDB 数据库可用之前,服务器或 DB 管理员应该知道和做些什么。

我正在考虑为innodb_buffer_pool_size和设置正确的值之类的事情innodb_log_file_size

那么,您可能忘记配置哪些简单的事情会导致使用数据库的应用程序无法达到最佳状态?

Nil*_*ter 14

在开始之前,您应该考虑一些配置选项。

只要您根本不使用 myisam,您就可以安全地将几乎所有max_connections内存(保持足够让您的操作系统舒适地运行,并且足以让您的innodb_buffer_pool. InnoDB 的好处在于它自己处理几乎所有的内存内容,无需分离查询缓存、键缓冲区等内容。

我建议您启用innodb_file_per_table,因为它可以更轻松地浏览文件系统并查看不同的表和数据库需要多少空间。您仍然需要一个通用的 ibdata 文件供 InnoDB 内部使用,但您可以将其定义为10M:autoextend. 无需定义许多具有预分配大小的不同 innodb 数据文件。

innodb_log_file_sizeinnodb_log_buffer_size如果你有很多大的 blob 对象,并且组合起来必须比你最大的 blob 对象大十倍。如果您不这样做(并且您不应该 [ 1 , 2 ]),则真的没有必要为此费心。查看MySQL 性能博客以获取有关如何计算的详细报告。

当您运行 MySQL 一段时间后,请使用MySQLTunerMySQL Tuning Primer检查您的设置。

有关更详细的报告,请尝试mysqlreport,对于实时监控,请检查mytop