我有一个运行在服务器上的MySql服务器(使用innodb),该服务器托管了几个以上的进程,这些进程在数据库上执行主要工作。
我在MySql调优方面没有太多经验,但以下是我认为更相关的一些参数的当前值:
query_cache_size = 16M
query_cache_limit = 1M
#table_cache = 64 (currently commented out)
您认为这些参数应该具有什么值?是否还有其他参数需要修改(我当前的参数设置是默认的)?
谢谢!
发布于 2011-08-12 19:56:21
这取决于您的数据库和您抛出的查询。您可以使用mysql_tuner来简要检查您的数据库需要什么。
发布于 2012-12-06 21:17:50
最常用的调整参数。
key_buffer_size:
query_cache_size
tmp_table_size
innodb_buffer_pool_size
innodb_additional_mem_pool_size
innodb_log_buffer_size
max_connections
sort_buffer_size
read_buffer_size
read_rnd_buffer_size
join_buffer_size
发布于 2019-09-03 19:48:44
我总是调优以下参数:
query_cache_size
tmp_table_size
innodb_buffer_pool_size
max_connections
back_log
如何设置参数?这取决于您的工作负载和服务器。如果你的服务器有足够的内存,你应该设置更多的innodb_buffer_pool_size。如果你有很高的并发性,你也应该给max_connections更多。同时,也有一些公式,例如:
back_log = max_connections / 5 + 50
如果你没有经验,我在这里建议你阅读以下文档或使用自动工具:
https://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html
https://github.com/yahoo/mysql_perf_analyzer
https://github.com/major/MySQLTuner-perl
最后,调优是非常危险的,也许你可以选择RDS(关系数据库服务)。
https://stackoverflow.com/questions/7038320
复制相似问题