重新启动MySQL使应用程序更快

时间:2019-02-22 00:59:47

标签: mysql drupal

我有一个运行大型Mysql数据库的Drupal 7应用程序。它基于AWS实例(30GB RAM,8个CPU)构建。下面是my.cnf副本。

问题是,当我重新启动mysql时,我的应用程序速度明显提高,这使我认为当前配置不是最佳配置,一旦缓存被填满,它们就会降低服务器速度。

有什么专家可以在这里指出问题吗?

[mysqld]
# moving datadir to /media/db ebs storage
datadir=/media/db/mysql
socket=/var/lib/mysql/mysql.sock
tmpdir=/dev/shm/
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0


local-infile=0
log-warnings=2

skip-external-locking
bind-address        = 127.0.0.1
expire_logs_days    = 1
max_binlog_size         = 100M
log-bin=bin.log
log-bin-index=bin-log.index
binlog_format=row
key_buffer_size                = 512M
max_allowed_packet  = 32M
thread_stack        = 292K
myisam_sort_buffer_size = 64M
thread_cache_size = 50
myisam-recover         = BACKUP
max_connections        = 100
max_user_connections = 150
table_cache            = 16384
table_open_cache       = 10240
table_definition_cache = 4096
thread_concurrency     = 8
join_buffer_size = 4M
query_cache_type = 1
query_cache_limit = 256K
query_cache_min_res_unit = 2k
query_cache_size = 200M
innodb_buffer_pool_size= 8G
tmp_table_size=64M
max_heap_table_size=64M
wait_timeout=50
interactive_timeout=50
connect_timeout=10
open-files-limit               = 65535
innodb_flush_log_at_trx_commit = 0
innodb_large_prefix=true
innodb_file_format=barracuda
innodb_file_per_table=true
table_open_cache = 5000
innodb_log_buffer_size= 32M
innodb_log_file_size = 512m
read_rnd_buffer_size = 8M
transaction-isolation = READ-COMMITTED
innodb_lock_wait_timeout = 25
innodb_write_io_threads = 16
innodb_sync_spin_loops = 200
innodb_spin_wait_delay = 24
innodb_read_io_threads = 16
innodb_flush_method = O_DIRECT
innodb_buffer_pool_instances = 8
innodb_autoinc_lock_mode = 2

[mysqldump]
max_allowed_packet  = 32M

[isamchk]
key_buffer  = 32M

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
set-variable=long_query_time=1
long_query_time=10
slow_query_log_file =/var/log/mysql/mysql-slow.log

1 个答案:

答案 0 :(得分:1)

每秒速率= RPS-有关my.cnf [mysqld]部分的建议

read_rnd_buffer_size=256K  # from 8M to reduce handler_read_rnd_next RPS
innodb_lru_scan_depth=100  # from 1024 to reduce CPU cycles used every SECOND
query_cache_min_res_unit=512  # from 2K to store more RESULTS in same query_cache_size

给你最好的。