如何优化mysql的cpu利用率有时会很高?
这是我的.ini文件
slow-query-log=1
long_query_time=10
server-id=1
max_connections=2000
table_open_cache=2000
tmp_table_size=391M
thread_cache_size=10
key_buffer_size=512M
read_buffer_size=64K
read_rnd_buffer_size=256K
innodb_additional_mem_pool_size=32M
innodb_flush_log_at_trx_commit=2
innodb_log_buffer_size=256M
innodb_buffer_pool_size=10G
innodb_log_file_size=512M
innodb_thread_concurrency=25
innodb_autoextend_increment=64
innodb_buffer_pool_instances=8
innodb_concurrency_tickets=5000
innodb_old_blocks_time=1000
innodb_open_files=300
innodb_stats_on_metadata=0
innodb_file_per_table=1
innodb_checksum_algorithm=0
back_log=80
flush_time=0
join_buffer_size=256K
max_allowed_packet=256M
max_connect_errors=100
open_files_limit=4161
query_cache_type=1
sort_buffer_size=256K
table_definition_cache=1400
binlog_row_event_max_size=8K
sync_master_info=10000
sync_relay_log=10000
sync_relay_log_info=10000
query_cache_size = 2084M
为了降低cpu的高利用率,请对此提出修改建议?
1条答案
按热度按时间xienkqul1#
为my.ini[mysqld]部分考虑的建议(rps=每秒速率)
以root用户身份登录后,您可以验证这些动态全局变量是否适用于您的mysql版本:
设置全局变量\u name=variable\u value(注:128k为1281024,391m为3911024*1024-不允许动态更改)
就在每天更改my.ini之前。如果您的请求因“只读”消息而被拒绝,请跳过它并通知我。
每天,将当前的my.ini保存在\history中,并使用日期计时文件名(如20180904-1137-my.ini)以允许快速返回到上次使用的my.ini。
第一次,将此块(包括开始日期和我们的网站名称)复制到[mysqld]部分的末尾,并通过删除开始#和空格字符启用每天一次更改,然后继续进行下一次更改。
使用前导#和空格键禁用先前的同名变量,以避免混淆。在5年内,您仍将拥有my.ini更改的历史记录和大致日期。
通常每天只有一次更换,在进行下一次更换前进行监控。如果一个变化似乎有害,回到上一个工作我的.ini,让我们知道,请。
期待您在实施后7天内发布评论到mysqlservertuning.com,选择商店,选择您购买的商品-即使是免费的,请向下滚动到评论并添加您的评论。发布评论不需要登录帐户。