异常
最近查看 VPS 状态的时候,发现硬盘容量快满了,一共 40gb,用了 36gb。正常情况应该在 20gb 以下,硬盘占用异常。
于是我在 AMH 面板寻找可疑的文件,最终在 /home/usrdata/mysql-generic-5.7/
找到了大量前缀为 mysql-bin
的文件。这些文件每隔 20 天左右生成一个,各 1gb 左右大小,总大小约 15gb。
与群友交流后,发现 mysql-bin
文件不能直接删除,可以通过设置 expire_logs_days
参数定期清理,这样就能一劳永逸。具体操作流程如下:
修改 my.cnf 文件
首先,登录 VPS 后台,建立快照,备份信息。
然后,登录 SSH。使用 find 命令搜索 my.cnf
(这是 MySQL 数据库的配置文件,用于配置 MySQL 服务器的各种参数和选项。)。
sudo find / -name "my.cnf"
我的 VPS 中,共检索出了两个 my.cnf
文件,其中高频使用的是:/usr/local/mysql-generic-5.7/my.cnf
确定目标文件后,需要先备份配置文件:
sudo cp /usr/local/mysql-generic-5.7/my.cnf /usr/local/mysql-generic-5.7/my.cnf.backup
再编辑配置文件
sudo nano /usr/local/mysql-generic-5.7/my.cnf
在 [mysqld]部分,添加或修改 expire_logs_days
参数。我设置的是保存 30 天数据,后自动清理。
[mysqld]
expire_logs_days = 30
保存更改并退出编辑器。MacOS 中,Control+O
保存更改,然后使用 Control +X
退出编辑器。
重启 SQL
Amh status
出现提醒:[AMH] Please select module,选择你的 SQL 数据库,我的是 mysql-generic-5.7。
然后选择 restart,就能重启 SQL 数据库了。
再次查看 VPS 硬盘情况,减少了 24 gb 的异常占用。
Amh-php-errors. Log
另外,还发现了一个 amh-php-errors.log
文件,占用了 5gb。
这是一个日志文件,用于记录在使用 AMH 面板管理的服务器上运行的 PHP 应用程序中发生的错误。如果它已经变得过大并占用了太多磁盘空间,是可以直接删除的。
结
删除了这两种异常文件后,VPS 从 36gb 的磁盘占用,减少到了 11gb,有了更多容量安装其他项目。
MySQL的bin文件大,说明对数据库操作很频繁。