MySQL不使用可用内存

前端之家收集整理的这篇文章主要介绍了MySQL不使用可用内存前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在从共享的网络托管公司转向VPS.我正在努力为我的系统找到最佳配置.

对于具有50万条记录的1个特定表,在前一个服务器上花费几秒钟的1个查询现在需要几分钟.

我正在努力改善服务器的响应时间,所以我购买了更多的内存(我有2GB的RAM,如果需要,我仍然可以购买更多的资源和2个内核).通过将旧公司的my.cnf复制到我的VPS,我也“作弊”:

  1. [MysqLd]
  2. read_buffer_size=8M
  3. read_rnd_buffer_size=8M
  4. sort_buffer_size=32M
  5. innodb_additional_mem_pool_size=503M
  6. innodb_flush_log_at_trx_commit=1
  7. innodb_log_buffer_size=16M
  8. innodb_buffer_pool_size=1007M
  9. innodb_log_file_size=256M
  10. innodb_thread_concurrency=8
  11. innodb_autoextend_increment=128
  12. max_connections=8059
  13. max_user_connections=50
  14. thread_cache_size=128
  15. thread_stack=196608
  16. binlog_cache_size=2M
  17. net_read_timeout=30
  18. net_retry_count=10
  19. net_write_timeout=30
  20. thread_concurrency=10
  21. open_files_limit=9940
  22. max_heap_table_size=32M
  23. tmp_table_size=64M
  24. key_buffer_size=512M
  25. key_buffer=128M
  26. myisam_sort_buffer_size=64M
  27. join_buffer=16M
  28. record_buffer=8M
  29. wait_timeout=300
  30. connect_timeout=10
  31. max_allowed_packet=16M
  32. max_connect_errors=100
  33. table_cache=1024
  34. query_cache_size=32M
  35. query_cache_type=1
  36. ft_min_word_len=4
  37. datadir=/var/lib/MysqL
  38. tmpdir=/tmp
  39. socket=/var/lib/MysqL/MysqL.sock
  40. old-passwords=0
  41. [MysqLdump]
  42. quick
  43. max_allowed_packet=16M
  44. [myisamchk]
  45. key_buffer=64M
  46. sort_buffer=64M
  47. read_buffer=16M
  48. write_buffer=16M

问题是查询仍然很慢,服务器不使用可用内存!

  1. total used free shared buffers cached
  2. Mem: 2002 1986 15 0 6 1079
  3. -/+ buffers/cache: 901 1101
  4. Swap: 1747 2 1745

有什么建议?

问候

最佳答案
你可以看看使用
https://github.com/rackerhacker/MySQLTuner-perl

您可以使用它来分析M​​ysql,它将输出推荐的设置.

对于2GB内存,您的设置似乎很高.
IE max_connections = 8059
在它自己的需要比你有更多的记忆.

  1. [MysqLd]
  2. max_connections=100
  3. innodb_buffer_pool_size=256M
  4. query_cache_size=256M
  5. key_buffer_size=256M
  6. innodb_flush_log_at_trx_commit=0
  7. innodb_flush_method=O_DIRECT
  8. query_cache_type=1
  9. query_cache_limit=2M
  10. table_cache=1024
  11. join_buffer_size=4M
  12. thread_cache_size=128
  13. tmp_table_size=256M
  14. max_heap_table_size=256MB

对于2gb RAM,您可以尝试在MysqL中使用这些设置
这些是我目前使用的2gb服务器之一的推荐设置

猜你在找的MySQL相关文章