Can’t connect to local MysqL server through socket ‘/var/lib/MysqL/MysqL.sock’ (11 “Resource temporarily unavailable”)
这种情况在负载下随机发生 – 但是我推的越多,PHP就越频繁地向我投掷.当这种情况发生时,我可以通过控制台连接本地,从PHP到127.0.0.1,而不是使用更快的unix套接字的“localhost”.
以下是一些系统变量,以消除常见问题:
cat /proc/sys/fs/file-max = 4895952 lsof | wc -l = 215778 (during "outages")
最高使用率:26%(261/1000)
InnoDB缓冲池/数据大小:10.0G / 3.7G(很多o室)
> soft nofile 999999
> hard nofile 999999
我实际上是运行MariaDB(服务器版本:10.0.17-MariaDB MariaDB Server)
这些结果是在正常加载下生成的,并且在休息时间运行MysqLslap,所以慢查询不是问题 – 只是高连接.
任何建议?我可以根据需要报告附加的设置/数据 – MysqLtuner.pl说一切都是一个好的
再次,这里的揭示是通过IP连接工作很好,在这些中断过程中是快速的 – 我不知道为什么.
编辑:这是我的my.ini(有些值可能看起来有点像我最近的故障排除更改,请记住,MysqL日志,系统日志或dmesg中没有错误)
socket=/var/lib/MysqL/MysqL.sock skip-external-locking skip-name-resolve table_open_cache=8092 thread_cache_size=16 back_log=3000 max_connect_errors=10000 interactive_timeout=3600 wait_timeout=600 max_connections=1000 max_allowed_packet=16M tmp_table_size=64M max_heap_table_size=64M sort_buffer_size=1M read_buffer_size=1M read_rnd_buffer_size=8M join_buffer_size=1M innodb_log_file_size=256M innodb_log_buffer_size=8M innodb_buffer_pool_size=10G [MysqL.server] user=MysqL [MysqLd_safe] log-error=/var/log/MysqLd.log pid-file=/var/run/MysqLd/MysqLd.pid open-files-limit=65535
/ proc / sys / net / core / somaxconn的值是多少?
net.core.somaxconn # The maximum number of "backlogged sockets". Default is 128.
尚未连接的队列中的连接.任何超过该队列的内容都将被拒绝.我怀疑你的情况.尝试根据您的负载增加它.
作为root用户运行
echo 1024 > /proc/sys/net/core/somaxconn
原文地址:https://www.jb51.cc/php/139573.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。