首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

记项目上线之后磁盘100%、数据库连接失败

症状描述:服务器出现数据库连接工具上不去,ssh可以登录,接口返回数据库信息空,仿佛数据库被清,top查看没有异常,服务器报硬盘100%。

1、有一个项目中需要在服务端生成保存图片

在服务端安装了imagick插件

中间用带了很多类似下图的new 方法

再请求达到一定量的时候,服务器报硬盘100%,查看之后发现是tmp下面的这个文件巨大,之前是有六七个magick开头的文件,每个1.5G~2G左右,我估计是因为实例化完,当前进程还没有死,又继续使用之前创建的对象处理新的请求,导致文件不断变大,有利有弊

后来我在代码层面每次使用完时候都clean和destroy,似乎有所改善

文件大小如上图大小。

2、上面解决之后磁盘没有报警,但数据库还是连接不上

Lost connection to MySQL server at ‘reading initial communication packet', system error: 0

估计是数据库连接数太多,先重启数据库服务,再查看具体问题

网上说是因为这个

在my.cnf配置文件中的[mysqld]区域添加skip-name-resolve,即跳过mysql连接的DNS反向解析功能,这样能很好地提高mysql性能。在这种情况下,就只能使用MySQL授权表中的IP来连接mysql服务了。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180811G11HOT00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券