Cara Memantau Progres Import SQL dengan PV (Pipe Viewer)

Apa Itu PV (Pipe Viewer)?

pv (Pipe Viewer) adalah utilitas command-line yang memungkinkan Anda memantau progres transfer data melalui pipeline di Linux/Unix. Salah satu kegunaannya adalah menampilkan progress bar, kecepatan transfer, dan estimasi waktu saat mengimpor file SQL besar.

Keuntungan Menggunakan PV

  • ✅ Menghindari proses hang yang seolah “tidak merespons”
  • ✅ Memantau kecepatan transfer (MB/s) dan waktu tersisa
  • ✅ Sederhana, ringan, dan tidak memerlukan konfigurasi rumit

Cara Menggunakan PV untuk Import SQL

1. Install PV

Jika belum terinstall, jalankan perintah berikut:

# Untuk Debian/Ubuntu:
sudo apt-get install pv

# Untuk CentOS/RHEL:
sudo yum install pv

2. Gunakan PV untuk Import SQL

Gabungkan pv dengan mysql atau psql (PostgreSQL) untuk melihat progres:

Contoh untuk MySQL/MariaDB:

pv database_backup.sql | mysql -u username -p nama_database

Penjelasan Flag:

  • pv nama_file.sql → Membaca file dan menampilkan progress bar
  • | mysql -u user -p → Meneruskan output ke MySQL untuk diimpor

Hasil yang Ditampilkan:

5.6GiB 0:03:45 [24.5MiB/s] [=======>] 67% ETA 0:01:48

3. Opsi Tambahan PV

  • Estimasi Waktu:
    pv -t -e nama_file.sql | mysql -u user -p nama_db
  • Batasi Kecepatan Transfer (misal 1MB/s):
    pv -L 1m nama_file.sql | mysql -u user -p nama_db

Tips Tambahan

  • Jika file SQL di-compress (.gz), gunakan kombinasi zcat + pv:
    pv backup.sql.gz | zcat | mysql -u user -p nama_db
  • Untuk PostgreSQL, ganti mysql dengan psql

Kesimpulan

Dengan pv, proses impor SQL yang sebelumnya “bisu” kini bisa dipantau secara real-time. Cukup install, tambahkan dalam pipeline, selamat mencoba dan semoga bermanfaat.