mongodb設定自動過期

2021-08-19 16:34:42 字數 530 閱讀 3116

在業務場景中, 可能會碰到這種情況: 比如只需要儲存最近一段時間的記錄, 超過這個時限的資料就是無效的,可以進行刪除操作,否則資料會越來越多。 最容易想到的乙個辦法, 是定時設定乙個指令碼去跑,將超過時間的資料刪除。 

對於mongodb,本身自帶了這個功能, 能夠設定過期的資料自動刪除。

怎麼建立呢,其實是在建立索引的時候有乙個options的選項,能夠指定過期的時間

不過並不是所有的字段都能夠建立此類索引, 這個field欄位要麼是date欄位,要麼是帶有date欄位的乙個array。 猜測其內部實現其實是通過比較這個date來判斷過期的。

看個簡單的例子:

db.collection.createindex(, )
這樣,往這個collection插入的資料都會在乙個小時後自動清楚,不需要手動處理了。

mongo 文件自動過期(刪除)

mongo文件自動過期 刪除 有助於減少老舊文件的數量,提高搜尋效率 第一,需要mongo設定對某欄位設定索引 第二,在插入這個欄位時,必須是date型別 1 指定過期時間到後刪除 2 插入文件後,10秒過期 如果指定expireafterseconds值非0為t,那麼就是在expireat t時間...

mongodb掛了,設定自動重啟

方法一,使用系統crond定時程序 注意 s 件可以自己先執行下 同時設定 set ff unix和 chmod許可權 最後別忘啟動service crond start 定時任務書寫要領 要領1 定時任務要加注釋 要領2 定時任務命令或指令碼結尾加 dev null 或 dev null 2 1 ...

Mysql設定binlog過期時間並自動刪除

問題 mysql資料庫由於業務原因,資料量增長迅速,binlog日誌會增加較多,占用大部分磁碟空間。解決方案 出於節約空間考慮,可進行刪除多餘binary日誌,並設定定期刪除操作。1 檢視binlog過期時間 mysql show variables like expire logs days 或者...