Kamis, 30 April 2026

MANAJEMEN BASIS DATA (BACKUP)

MATERI: MANAJEMEN BASIS DATA (BACKUP)

🎯 Tujuan Pembelajaran

Peserta didik mampu:

  • Memahami konsep backup database
  • Menjelaskan jenis-jenis backup
  • Melakukan backup database menggunakan tools
  • Mengembalikan (restore) database dari hasil backup

🧠 A. Pengertian Backup Database

Backup database adalah proses menyalin data dari database ke media lain untuk mencegah kehilangan data jika terjadi:

  • Kerusakan sistem
  • Human error (kesalahan pengguna)
  • Serangan virus/malware
  • Kegagalan hardware

👉 Intinya: backup = cadangan data


⚠️ B. Pentingnya Backup

Tanpa backup, risiko yang bisa terjadi:

  • Data hilang permanen
  • Sistem tidak bisa digunakan
  • Kerugian besar (terutama perusahaan)

Dengan backup:

  • Data aman
  • Bisa dikembalikan kapan saja
  • Mendukung keamanan sistem

📂 C. Jenis-Jenis Backup

1. Full Backup

Backup seluruh data dalam database

Kelebihan:

  • Data lengkap
  • Mudah restore

Kekurangan:

  • Memakan waktu lama
  • Ukuran file besar

2. Incremental Backup

Backup hanya data yang berubah sejak backup terakhir

Kelebihan:

  • Lebih cepat
  • Hemat penyimpanan

Kekurangan:

  • Restore lebih rumit

3. Differential Backup

Backup data yang berubah sejak full backup terakhir

Kelebihan:

  • Restore lebih cepat dibanding incremental

Kekurangan:

  • Ukuran file lebih besar dari incremental

🛠️ D. Tools untuk Backup Database

Beberapa tools yang sering digunakan:

  • MySQL / MariaDB
  • phpMyAdmin
  • XAMPP (paket server lokal)

💻 E. Cara Backup Database (MySQL)

1. Menggunakan phpMyAdmin

Langkah:

  1. Buka browser → http://localhost/phpmyadmin
  2. Pilih database
  3. Klik menu Export
  4. Pilih format SQL
  5. Klik Go

📌 Hasil: file .sql


2. Menggunakan Command Line (CMD)

Perintah:

mysqldump -u root -p nama_database > backup.sql

atau tentukan lokasi penyimpanan backup: 

C:\xampp\mysql\bin\mysqldump -u root -p db_latihan > C:\backup\db_latihan.sql

Penjelasan:

  • mysqldump → tool backup
  • -u root → user database
  • -p → password
  • nama_database → database yang dibackup
  • backup.sql → file hasil backup

🔄 F. Cara Restore Database

1. Menggunakan phpMyAdmin

  1. Buat database baru
  2. Klik menu Import
  3. Pilih file .sql
  4. Klik Go

2. Menggunakan CMD

mysql -u root -p nama_database < backup.sql


🔐 G. Strategi Backup yang Baik

Agar backup efektif:

  • Lakukan backup secara rutin (harian/mingguan)
  • Simpan di tempat berbeda (cloud/flashdisk)
  • Gunakan lebih dari satu metode backup
  • Uji hasil backup (test restore)

📊 H. Contoh Kasus

Sebuah sekolah memiliki database absensi.
Jika server rusak dan tidak ada backup:
➡️ Semua data absensi hilang

Jika ada backup:
➡️ Data bisa dikembalikan dengan cepat

  

Selasa, 07 April 2026

LOG AKTIVITAS

🔹 1. Pengertian Log Aktivitas

Log aktivitas adalah catatan semua aktivitas yang terjadi di dalam sistem, seperti:

  • Login / logout user
  • Menambah data
  • Mengedit data
  • Menghapus data
  • Akses halaman tertentu

🔹 2. Struktur Data (Database)

Buat tabel khusus, misalnya: activity_log

CREATE TABLE activity_log (
    id INT AUTO_INCREMENT PRIMARY KEY,
    user_id INT,
    aktivitas VARCHAR(255),
    keterangan TEXT,
    ip_address VARCHAR(50),
    user_agent TEXT,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

Penjelasan:

  • user_id → siapa yang melakukan
  • aktivitas → jenis aktivitas (login, tambah data, dll)
  • keterangan → detail aktivitas
  • ip_address → alamat IP user
  • user_agent → browser/device
  • created_at → waktu kejadian

🔹 3. Contoh Implementasi (PHP Native)

🔸 Fungsi untuk menyimpan log

function simpanLog($user_id, $aktivitas, $keterangan) {
    global $koneksi;

    $ip = $_SERVER['REMOTE_ADDR'];
    $user_agent = $_SERVER['HTTP_USER_AGENT'];

    $query = "INSERT INTO activity_log
              (user_id, aktivitas, keterangan, ip_address, user_agent)
              VALUES
              ('$user_id', '$aktivitas', '$keterangan', '$ip', '$user_agent')";

    mysqli_query($koneksi, $query);
}


🔸 Contoh penggunaan

Saat login berhasil:

simpanLog($user_id, "LOGIN", "User berhasil login");

Saat tambah data:

simpanLog($user_id, "TAMBAH DATA", "Menambahkan data siswa");

Saat hapus data:

simpanLog($user_id, "HAPUS DATA", "Menghapus data produk ID: 10");


🔹 4. Menampilkan Log Aktivitas

$query = mysqli_query($koneksi, "SELECT * FROM activity_log ORDER BY created_at DESC");

while($data = mysqli_fetch_assoc($query)) {
    echo $data['created_at']." - ".$data['aktivitas']." - ".$data['keterangan']."<br>";
}


🔹 5. Pengembangan Lebih Lanjut 🚀

Agar lebih profesional, bisa ditambahkan:

Filter log

  • Berdasarkan tanggal
  • Berdasarkan user
  • Berdasarkan aktivitas

Pagination

Agar tidak berat saat data banyak

Level log

  • INFO → aktivitas biasa
  • WARNING → aktivitas mencurigakan
  • ERROR → kesalahan sistem

Integrasi Framework

Jika pakai:

  • Laravel → gunakan built-in logging (Log::info())
  • CodeIgniter → gunakan log_message()

🔹 6. Tips Best Practice 🔐

  • Jangan simpan password di log
  • Batasi akses log (hanya admin)
  • Backup log secara berkala
  • Gunakan index pada kolom created_at untuk performa

🔹 7. Contoh Output Log

2026-04-07 08:00:01 - LOGIN - User berhasil login
2026-04-07 08:05:10 - TAMBAH DATA - Menambahkan data siswa
2026-04-07 08:10:22 - HAPUS DATA - Menghapus data ID 5

 


contoh pembuatan log activity  :

1. buat tabel dengan nama activity_log menggunakan cmd


2. buat file dengan nama log.php menggunakan teks editor ( visual studio code )


3. panggil fungsi log di semua aktivitas baik login , tambah data, edit dan hapus.

contoh di proses login



4. uji coba proses login berhasil dan gagal di browser ( crome )




5. kemudian cek hasil aktivitas di tabel menggunakan perintah select di CMD














MANAJEMEN BASIS DATA (BACKUP)

MATERI: MANAJEMEN BASIS DATA (BACKUP) 🎯 Tujuan Pembelajaran Peserta didik mampu: Memahami konsep backup database Menjelaska...