国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > 管理維護 > 正文

清理memcachedb的日志文件

2024-09-10 14:19:02
字體:
來源:轉載
供稿:網友

memcachedb使用的BerkeleyDB的數據庫,但每10M生成一個log文件:

 

[root@aslibra db]# ll -h
total 26G
-rw-r--r-- 1 root root  25G Jun 22 00:12 data.db
-rw-r----- 1 root root  24K Jun 20 19:33 __db.001
-rw-r----- 1 root root 3.8M Jun 20 19:33 __db.002
-rw-r----- 1 root root  81M Jun 20 19:33 __db.003
-rw-r----- 1 root root  96K Jun 20 19:33 __db.004
-rw-r----- 1 root root  11M Jun 20 19:33 __db.005
-rw-r----- 1 root root  48K Jun 20 19:33 __db.006
-rw-r----- 1 root root  10M Jun 21 22:47 log.0000002271
-rw-r----- 1 root root  10M Jun 21 22:47 log.0000002272
-rw-r----- 1 root root  10M Jun 21 22:48 log.0000002273
-rw-r----- 1 root root  10M Jun 21 22:49 log.0000002274
.....



定期清理為好,否則就要有兩倍數據的空間了,以前寫的是定期清理某個時間修改的日志:

 

find /BerkeleyDB/aslibra.com/db/ -maxdepth 1 -type f -name 'log.*' -mmin +100 | xargs -i rm -f {}



清理100分鐘前的文件,導致了一個文件,如果停用或者100分鐘內沒有更新動作,將刪掉了所有日志,吃虧了,導致啟動失敗了,當然,可能可以修復,只是糊涂的話就沒法再啟用了。

穩當點,就刪除所有的日志文件,保留最新的100個:

 

#!/bin/sh

cd /BerkeleyDB/aslibra.com/db/
ls -t log.* | awk '{ if(NR>100)print $0}'|xargs -i -t rm -f {}


簡單解析一下腳本意思:

ls -t log.* 是列出所有log開頭的日志文件,按時間排序,也就是最新的排前面
awk里面NR代表當前行數,NR>100則是100行后的才輸出
xargs就是接收到awk輸出的文件才轉給rm刪除

參考資料:awk手冊

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 蒙阴县| 五家渠市| 梅河口市| 兴化市| 通州市| 许昌县| 泸水县| 合山市| 科尔| 西乌珠穆沁旗| 沂水县| 常德市| 陆良县| 泰顺县| 京山县| 江陵县| 兰考县| 辉南县| 斗六市| 隆昌县| 涟水县| 邹城市| 小金县| 监利县| 丽江市| 滨海县| 天等县| 安西县| 双辽市| 达日县| 怀安县| 图们市| 霞浦县| 宁海县| 陇西县| 永和县| 乐业县| 二手房| 本溪市| 原阳县| 万年县|