微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Mysql 5.6.10配置

DB服务器

16 cores 
63Gb RAM 
CentOS release 6.8

等/ my.cnf中

[MysqLd]
pid_file=/var/lib/MysqL/fatty01.pid

datadir=/var/lib/MysqL 
socket=/var/lib/MysqL/MysqL.sock
user=MysqL

innodb_buffer_pool_size = 50G
innodb_log_file_size = 2G
innodb_flush_log_at_trx_commit = 0
sync_binlog = 0
innodb_flush_method = O_DIRECT
innodb_buffer_pool_instances = 16
innodb_thread_concurrency = 16
skip_name_resolve = 1 
innodb_io_capacity = 4000
innodb_io_capacity_max = 6000
innodb_buffer_pool_dump_at_shutdown = 1
innodb_buffer_pool_load_at_startup = 1
query_cache_size = 0
query_cache_type = OFF
innodb_checksum_algorithm = crc32
table_open_cache_instances = 16
innodb_read_io_threads = 20
innodb_write_io_threads = 10
max_connections = 700

when we have peaks of 3000 concurrent clients the MysqLd does not seem
to pull all the resources posibles from the machine.

New relic

我看到负载在40但cpu似乎没有超过60%

That reflects in the front end server

enter image description here

**
我的问题很明确,如何在不影响服务器的情况下提高性能?另外,如何减少前端服务器中的MysqL等待时间,因为数据库服务器端的配置显然存在问题.
**

**

UPDATE After research the problem seem to be in the slow queries, so I
guess this configuration is optimal for this hardware

**

解决方法:

不,它不太可能是一个简单的调整改变.正如我所说,my.cnf看起来不错 – 基于有限的信息.

根据图表,突然发生了一些事情.或者是一连串的活动.

打开slowlog,设置long_query_time = 1,等到问题再次发生,然后使用pt-query-digest告诉你顽皮的查询.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。