mysql - 安装MySQL的虚拟机RAM负载问题

标签 mysql proxmox

时间安排

Image

每日时间表

Image

PROXMOX上安装了一个虚拟机,MySQL安装在那里。 为此虚拟机分配了 30GB RAM 和 20 个内核,因为它接收大量数据。

问题是VM上的负载逐渐增加,我不明白为什么。 重启 MySQL 服务器后,数据处理速度非常快,而 RAM 上的负载在 3-4 GB 左右。

服务器运行超过24小时后,开始处理数据的时间很长,而到达的数据量是一样的。 RAM 上的负载升至 25GB。

怎么了? 我附上屏幕截图和 my.cnf

我很抱歉我的英语不好。 感谢您的回答。

[client]
port        = 3306
socket      = /var/run/mysqld/mysqld.sock

[mysqld_safe]
socket      = /var/run/mysqld/mysqld.sock
nice        = 0

[mysqld]
skip-name-resolve
event_scheduler = on
user        = mysql
pid-file    = /var/run/mysqld/mysqld.pid
socket      = /var/run/mysqld/mysqld.sock
port        = 3306
basedir     = /usr
datadir     = /var/lib/mysql
tmpdir      = /tmp
language    = /usr/share/mysql/english
skip-external-locking
key_buffer      = 16M
max_allowed_packet  = 16M
thread_stack        = 512K
thread_cache_size   = 8
myisam-recover         = BACKUP
max_connections         = 700
#table_cache            = 64
#thread_concurrency      = 12
query_cache_limit       = 1M
query_cache_size        = 50M
innodb_buffer_pool_size = 16G
innodb_buffer_pool_instances = 16
innodb_additional_mem_pool_size=400M
innodb_log_buffer_size=80M
innodb_flush_log_at_trx_commit = 0
innodb_log_file_size = 128M
innodb_flush_method=O_DIRECT
innodb_autoinc_lock_mode = 2
innodb_thread_concurrency = 12
sort_buffer=512M
thread_concurrency=32
#record_buffer=128M
query_cache_type=2
tmp_table_size=1G
general_log_file        = /var/log/mysql/mysql.log
general_log             = 0
log_slow_queries        = /var/log/mysql/mysql-slow.log
long_query_time = 10            = /var/log/mysql/mysql-bin.log
expire_logs_days    = 10
max_binlog_size         = 100M

[mysql]
[isamchk]
key_buffer      = 16M

[mysqldump]
quick
quote-names
max_allowed_packet      = 16M

[isamchk]
key_buffer              = 16M

最佳答案

每秒速率=RPS - 针对 my.cnf [mysqld] 部分考虑的建议

key_cache_age_threshold=7200  # from 300 seconds to reduce key_reads RPS of 240123
thread_cache_size=100  # from 8 to reduce threads_created in 1 day
innodb_buffer_pool_size=20G  # from 16G to reduce innodb_buffer_pool_reads RPS of 20
innodb_read_io_threads=64  # from 1 for improved read performance
innodb_write_io_threads=64  # from 1 for improved write performance

请联系我们,还有很多机会可以提高您的实例响应时间。

关于mysql - 安装MySQL的虚拟机RAM负载问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56964503/

相关文章:

mysql - 将相似产品分组到主要产品下的 SQL 代码

python - Django 尝试连接到错误的套接字

php - 选择多个变量列

linux - 如何在 openvz 容器中将 zsh 设置为默认 shell?

debian-stretch - 重新启动后,DRBD 出现 Connected Diskless/Diskless 状态

virtual-machine - 获取通过 Proxmox 创建的虚拟机的 IP 地址

php - 摆脱 php mysql 中的换行符

MySQL 选择返回 JSON

linux - 从原始文件创建虚拟机 - Proxmox

kubernetes - Proxmox lxc 添加添加 linux.kernel_modules