การจัดเก็บข้อมูล¶
OpsMini ใช้ SQLite แบบฝังตัวในการเก็บข้อมูลธุรกิจทั้งหมด (ผู้ใช้ งาน การแจ้งเตือน เว็บไซต์ ล็อกการตรวจสอบ ฯลฯ)
ไฟล์ข้อมูล¶
- พาธเริ่มต้น: การติดตั้งแบบคลิกเดียวคือ
/data/opsmini/opsmini.db(ระบุโดยdatabase.pathในconfig.yamlค่าเริ่มต้นคือไดเรกทอรีเดียวกับไฟล์กำหนดค่า) - ตอนเริ่มครั้งแรกสร้างและสร้างตารางอัตโนมัติ (GORM auto-migration)
- ฟิลด์ละเอียดอ่อน (คีย์ / Token / TOTP secret) ถูกเข้ารหัสด้วย AES-GCM ก่อนเก็บลงฐานข้อมูล
การสำรอง¶
SQLite เป็นไฟล์เดียว คัดลอกโดยตรงเพื่อสำรองได้:
# แนะนำให้หยุดบริการก่อนสำรอง เพื่อความสอดคล้องของข้อมูล
sudo systemctl stop opsmini
cp /data/opsmini/opsmini.db /backup/opsmini.db.$(date +%s)
sudo systemctl start opsmini
การกู้คืน¶
sudo systemctl stop opsmini
cp /backup/opsmini.db.<ts> /data/opsmini/opsmini.db
sudo systemctl start opsmini
ภาพรวมเนื้อหาที่จัดเก็บ¶
| ข้อมูล | ตาราง | คำอธิบาย |
|---|---|---|
| ผู้ใช้และบทบาท | users / roles |
บัญชี แฮชรหัสผ่าน บทบาทและสิทธิ์ RBAC |
| เซสชัน | sessions |
refresh token และอายุการใช้งาน |
| การกำหนดค่าพาเนล | settings |
KV เช่น ธีม / ภาษา / การแสดงเมนู |
| เว็บไซต์ / ฐานข้อมูล | websites / databases |
บันทึกไซต์และอินสแตนซ์ฐานข้อมูล |
| งานตามกำหนดเวลา | cron_jobs |
งานตามกำหนดเวลาของพาเนล |
| กฎ / เหตุการณ์การแจ้งเตือน | alert_rules / alert_events |
การแจ้งเตือนการมอนิเตอร์ |
| ล็อกการตรวจสอบ / การเข้าถึง | audit_logs / access_logs |
บันทึกการดำเนินการและการเข้าถึง (เก็บ 7 วันเป็นค่าเริ่มต้น) |
การล้างข้อมูล¶
- ล็อกการตรวจสอบและล็อกการเข้าถึงเก็บ 7 วันเป็นค่าเริ่มต้น ล้างอัตโนมัติทุกชั่วโมง ปรับจำนวนวันเก็บได้ในการตั้งค่าพาเนล
- เหตุการณ์การแจ้งเตือนล้างอัตโนมัติตามระยะเวลาเก็บ (ค่าเริ่มต้น 30 วัน)