加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL不使用可用内存

发布时间:2020-12-11 23:48:59 所属栏目:MySql教程 来源:网络整理
导读:我正在从共享的网络托管公司转向VPS.我正在努力为我的系统找到最佳配置. 对于具有50万条记录的1个特定表,在前一个服务器上花费几秒钟的1个查询现在需要几分钟. 我正在努力改善服务器的响应时间,所以我购买了更多的内存(我有2GB的RAM,如果需要,我仍然可以购买

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

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

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

[mysqld]
read_buffer_size=8M
read_rnd_buffer_size=8M
sort_buffer_size=32M
innodb_additional_mem_pool_size=503M
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=16M
innodb_buffer_pool_size=1007M
innodb_log_file_size=256M
innodb_thread_concurrency=8
innodb_autoextend_increment=128
max_connections=8059
max_user_connections=50
thread_cache_size=128
thread_stack=196608
binlog_cache_size=2M
net_read_timeout=30
net_retry_count=10
net_write_timeout=30
thread_concurrency=10
open_files_limit=9940
max_heap_table_size=32M
tmp_table_size=64M
key_buffer_size=512M
key_buffer=128M
myisam_sort_buffer_size=64M
join_buffer=16M
record_buffer=8M
wait_timeout=300
connect_timeout=10
max_allowed_packet=16M
max_connect_errors=100
table_cache=1024
query_cache_size=32M
query_cache_type=1
ft_min_word_len=4
datadir=/var/lib/mysql
tmpdir=/tmp
socket=/var/lib/mysql/mysql.sock
old-passwords=0
[mysqldump]
quick
max_allowed_packet=16M
[myisamchk]
key_buffer=64M
sort_buffer=64M
read_buffer=16M
write_buffer=16M

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

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

有什么建议?

问候

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

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

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

[mysqld]
max_connections=100
innodb_buffer_pool_size=256M
query_cache_size=256M
key_buffer_size=256M
innodb_flush_log_at_trx_commit=0
innodb_flush_method=O_DIRECT
query_cache_type=1
query_cache_limit=2M
table_cache=1024
join_buffer_size=4M
thread_cache_size=128
tmp_table_size=256M
max_heap_table_size=256MB

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读