2.9 KiB
2.9 KiB
🚀 QUICK START - Database Integration
Langkah 1: Setup Database (First Time Only)
Jalankan script setup database:
python setup_db.py
Output yang diharapkan:
✓ Database 'deteksi_pmk' created/verified
✓ Database tables created/verified
✓ Database setup completed successfully!
Langkah 2: Jalankan Aplikasi
python app.py
Buka browser ke: http://localhost:5000
Deploy ke Railway
Repository ini sudah disiapkan untuk Railway dengan entrypoint Flask di app.py.
- Hubungkan repository ini ke Railway.
- Tambahkan layanan database MySQL di Railway jika ingin penyimpanan riwayat berjalan.
- Set environment variable berikut di Railway:
FLASK_SECRETDATABASE_URLatauMYSQLHOST,MYSQLPORT,MYSQLUSER,MYSQLPASSWORD,MYSQLDATABASE
- Railway akan menjalankan
gunicorn app:app --bind 0.0.0.0:$PORT.
Catatan:
opencv-python-headlessdipakai supaya build Railway tidak bergantung pada library GUI.- Jika model belum ada di folder
models/, jalankan training dulu sebelum deploy.
Langkah 3: Upload Gambar & Lihat Riwayat
- Upload: Klik "Upload Gambar" → Pilih file → Upload
- Hasil disimpan otomatis ke database MySQL
- Lihat Riwayat: Klik "Riwayat Deteksi"
- Detail: Klik tombol "Detail" untuk melihat hasil lengkap
📋 Fitur Baru
✅ MySQL Database - Penyimpanan data terstruktur ✅ Detail Riwayat - Lihat hasil lengkap setiap deteksi ✅ Feature Display - Lihat fitur-fitur yang dianalisis ✅ Automatic Backup - CSV sebagai fallback ✅ Real-time Stats - Statistik dari database
⚙️ Konfigurasi
Edit .env jika ingin ubah MySQL settings:
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=
DB_NAME=deteksi_pmk
Untuk Railway, lebih aman pakai variabel environment yang disediakan oleh plugin database atau `DATABASE_URL`.
🔗 Useful Routes
| URL | Deskripsi |
|---|---|
/ |
Halaman Beranda |
/upload |
Upload Gambar |
/riwayat_deteksi |
Riwayat Deteksi (List) |
/detail-deteksi/1 |
Detail Riwayat (ID=1) |
/expert-system |
Sistem Pakar |
🆘 Jika Ada Error
Error: "MySQL not available"
- Jalankan:
python setup_db.py - Pastikan MySQL server running
Error: "Cannot connect to database"
- Cek
.envconfiguration - Pastikan DB_HOST, DB_USER, DB_password benar
Error: "Unknown database"
- Jalankan:
python setup_db.py
Memory load error?
- Restart Python:
python app.py
📁 File Penting
app.py- Main application.env- Database configurationutils/mysql_db.py- Database operationssetup_db.py- Database setup scripttemplates/detail_deteksi.html- Detail page
✨ Done!
Database integration sudah selesai. Aplikasi siap digunakan dengan penyimpanan data MySQL yang aman dan terstruktur.
Untuk dokumentasi lengkap, lihat:
DATABASE_SETUP.md- Setup guide lengkapDATABASE_INTEGRATION_SUMMARY.md- Summary fitur baru