ubuntu mysql limitnofile_ubuntu mysql5.7设置Open Files Limit

目的:解决Too many open files异常

方式:设置Open Files Limit

环境:(MySQL)Server version: 5.7.27-0ubuntu0.16.04.1 (Ubuntu)

第一步:登录MySQL,检查mysql可以打开的文件数量(我已经设置过,本来显示值是1024)

mysql> show variables like 'open%';+------------------+---------+

| Variable_name | Value |

+------------------+---------+

| open_files_limit | 1048576 |

+------------------+---------+

1 row in set (0.01 sec)

第二步:检查系统文件

发现系统文件的open files 为65535,说明这个open file并没有被mysql使用。

主要由于发现在ubuntu14.04的操作系统中,使用Systemd替代了之前的SysV,因此 /etc/security/limits.conf 文件的配置作用域缩小了些。limits.conf这里的配置,只适用于通过PAM认证登录用户的资源限制,对systemd的service的资源限制不生效。对于systemd service的资源全局的配置,放在文件 /etc/systemd/system.conf 和 /etc/systemd/user.conf。 同时,也会加载两个对应的目录中的所有.conf文件 /etc/systemd/system.conf.d/.conf 和 /etc/systemd/user.conf.d/.conf其中,system.conf 是系统实例使用的,user.conf用户实例使用的。一般的sevice,使用system.conf中的配置即可。systemd.conf.d/.conf中配置会覆盖system.conf。

root@iZwz9j39cr29g0sykcftfmZ:~# ulimit -n //查看可以打开的文件数65535root@iZwz9j39cr29g0sykcftfmZ:~# ulimit -a //查看所有的限制,主要关注 open files

corefile size (blocks, -c) 0data seg size (kbytes,-d) unlimited

scheduling priority (-e) 0

file size (blocks, -f) unlimited

pending signals (-i) 64035

max locked memory (kbytes, -l) 64

max memory size (kbytes, -m) unlimitedopen files (-n) 65535

pipe size (512 bytes, -p) 8POSIX message queues (bytes,-q) 819200

real-time priority (-r) 0stack size (kbytes,-s) 8192cpu time (seconds,-t) unlimitedmax user processes (-u) 64035virtual memory (kbytes,-v) unlimitedfile locks (-x) unlimited

第三步:解决办法

输入:systemctl edit mysql.service

添加:

[Service]

LimitNOFILE=infinity

LimitMEMLOCK=infinity

保存后,自动生成/etc/systemd/system/mysql.service.d/override.conf,按回车

[Service]

LimitNOFILE=infinity

LimitMEMLOCK=infinity

/etc/systemd/system/mysql.service.d/override.conf

^G Get Help ^O Write Out ^W Where Is ^K Cut Text ^J Justify ^C Cur Pos ^Y Prev Page

^X Exit ^R Read File ^\ Replace ^U Uncut Text ^T To Spell ^_ Go To Line ^V Next Page

systemctl daemon-reload #让 SystemD 重新加载配置文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值