簡體   English   中英

高峰時段時MySQL開始斷開連接

[英]Mysql start dropping connection when peak hours

我們的數據庫在高峰時段開始斷開連接。 大約有3%的連接斷開,mysql返回消息“ mysqli :: mysqli():(HY000 / 2003):無法連接到'10 .88。***'(99)上的MySQL服務器”。 我已經調整了幾個mysql和內核參數,但沒有幫助:-/ etc / sysctl.conf:

net.ipv4.tcp_max_tw_buckets = 524288 net.core.somaxconn = 2048 net.ipv4.ip_local_port_range = 1024 65000 net.ipv4.tcp_max_syn_backlog = 30000 net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_synack_retries =

-/ etc / my.cnf:

open_files_limit = 65536 max_connections = 3600
connect_timeout = 60
wait_timeout = 2400
back_log = 4096

-/ etc / security / limits.conf

mysql軟nofile 65536 mysql硬nofile 65536 mysql軟nproc 65536 mysql硬nproc 65536

我們的數據庫通過一台數據庫機處理> 40000個查詢和每秒> 8000個連接,沒有分片和連接池。 我想念什么? 有誰知道導致瓶頸的原因嗎? 謝謝。

這是my.cnf中的內容:

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

skip_name_resolve = off
open_files_limit = 65536

max_allowed_packet = 1073741824
expire_logs_days = 2

binlog_format = row
innodb_file_per_table = 1
innodb_flush_method=O_DIRECT

innodb_buffer_pool_instances = 16
innodb_buffer_pool_size = 43G
innodb_thread_concurrency = 0

log-bin=mysql-bin
server-id=1
innodb_flush_log_at_trx_commit=1
slave-skip-errors = 1062,1032

max_connections=3600
connect_timeout=60
wait_timeout=2400

back_log=4096

thread_cache_size=48

symbolic-links=0

user=mysql

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
!includedir /etc/my.cnf.d

所以..嘗試將您的max_connections增加到> 8000嗎?

在my.cnf中

max_connections = 9000

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM