# 過期

本頁說明 ToriiDB 的鍵如何設定 TTL，以及過期鍵在哪些時間點被移除。

## 過期

| 操作 | 結果 |
|---|---|
| `TTL(key)` | 剩餘秒數；無過期為 `-1`；不存在或已過期為 `-2` |
| `Expire(key, seconds)` | `ExpireAt = now + seconds` |
| `ExpireAt(key, ts)` | 絕對時間戳 |
| `Persist(key)` | 移除過期 |

過期在多處生效：

- `Get` 將過期項目視為不存在，並從記憶體刪除。
- `Keys`、`Find`、`Query`、`VSearch` 跳過過期項目。
- 計時器每分鐘從每個已載入資料庫移除過期項目。
- 壓縮時不會把過期項目寫入新 snapshot。

## 相關頁面

- [TTL 指令](/zh/cli-reference-expiration)
- [壓縮與回收](/zh/persistence-compaction)
- [資料方法](/zh/socket-daemon-methods)
