Files
api-btekno/migrations
mwpn 4d36f02f32 feat: tambah endpoint frontend dan field camera di gate
- Tambah endpoint GET /tariffs (list tariffs)
- Tambah endpoint GET /locations/{code} (detail location)
- Tambah endpoint GET /gates/{location_code}/{gate_code} (detail gate)
- Tambah endpoint GET /tariffs/{location_code}/{gate_code}/{category} (detail tariff)
- Tambah endpoint GET /audit-logs (audit trail history)
- Tambah endpoint GET /entry-events (raw entry events)
- Tambah endpoint GET /realtime/events (realtime events list)
- Tambah field camera di gates (support HLS, RTSP, HTTP streaming)
- Migration 004: add camera column to gates table
- Update validasi dan service untuk support camera field
2025-12-18 06:36:49 +07:00
..

Database Migrations

Cara Apply Migration

1. Backup Database (PENTING!)

Sebelum menjalankan migration, pastikan untuk backup database terlebih dahulu:

mysqldump -u sql_retribusi -p sql_retribusi > backup_$(date +%Y%m%d_%H%M%S).sql

2. Apply Migration

Menggunakan MySQL Command Line:

mysql -u sql_retribusi -p sql_retribusi < migrations/001_create_audit_logs.sql

Menggunakan phpMyAdmin:

  1. Login ke phpMyAdmin
  2. Pilih database sql_retribusi
  3. Klik tab "SQL"
  4. Copy-paste isi file 001_create_audit_logs.sql
  5. Klik "Go" untuk execute

Menggunakan MySQL Workbench:

  1. Buka MySQL Workbench
  2. Connect ke database server
  3. Pilih database sql_retribusi
  4. File → Run SQL Script
  5. Pilih file 001_create_audit_logs.sql
  6. Klik "Run"

3. Verifikasi

Setelah migration berhasil, verifikasi tabel sudah dibuat:

SHOW TABLES LIKE 'audit_logs';
DESCRIBE audit_logs;

Daftar Migration

001_create_audit_logs.sql

  • Tanggal: 2024-12-28
  • Deskripsi: Membuat tabel audit_logs untuk tracking semua perubahan data (create/update/delete)
  • Tabel: audit_logs
  • Rollback: Tidak ada (tabel ini critical untuk audit, tidak boleh dihapus)

002_create_hourly_summary.sql

  • Tanggal: 2024-12-28
  • Deskripsi: Membuat tabel hourly_summary untuk rekap per jam
  • Tabel: hourly_summary

003_create_realtime_events.sql

  • Tanggal: 2024-12-28
  • Deskripsi: Membuat tabel realtime_events untuk ring buffer SSE events
  • Tabel: realtime_events

004_add_camera_to_gates.sql

  • Tanggal: 2025-01-17
  • Deskripsi: Menambahkan field camera ke tabel gates untuk menyimpan URL atau identifier kamera
  • Tabel: gates
  • Rollback:
ALTER TABLE gates DROP COLUMN camera;

Catatan Penting

  • JANGAN hapus atau modify migration file yang sudah di-apply
  • Selalu backup database sebelum apply migration
  • Test migration di environment development terlebih dahulu
  • Jika terjadi error, restore dari backup dan perbaiki migration file