menu
languageBahasa Indonesia
save_alt Download

DB Manager Pro

Kloning live stream, backup cerdas, schema diff, auditor kesehatan, generator mock data, dan auto-discovery Docker/.env.

oleh T3zcaDev Plugin komunitas

Readme

Teks ini ditulis oleh pihak ketiga dan diterjemahkan secara otomatis. Baca versi asli dalam bahasa Inggris

Versi Lisensi Beekeeper Studio

Plugin dan rangkaian alat canggih untuk Beekeeper Studio (v5.4+). Dikembangkan oleh T3zcaDev.


✨ Fitur Utama

  1. 📸 Snapshot & Backup Cerdas (1-Klik):
    • Backup yang dikompresi secara langsung dengan Zstandard (zstd -3) atau Gzip berkecepatan tinggi.
    • Mesin Hibrida: Menggunakan dump langsung via pipe jika daemon aktif, atau dump native dari browser dengan CompressionStream jika sedang offline.
    • Penjelajah snapshot lokal dengan tanggal, ukuran, dan mesin, plus pemulihan terpandu dengan modal konfirmasi dan proteksi anti path-traversal.
  2. 🔄 Kloning Langsung Real-time (Stream A ➔ B):
    • Transfer database lengkap antar server (Produksi/Staging ➔ Lokal/Docker) secara real-time melalui pipe, tanpa menyimpan file sementara di disk.
    • Sanitasi otomatis: Menghapus pernyataan yang bermasalah (DEFINER, USE, CREATE DATABASE, SQL_LOG_BIN).
    • Filter tabel dan Data Masking: Mengecualikan tabel telemetri serta menyamarkan email dan data sensitif secara langsung.
  3. ⚖️ Schema Diff V2 Multi-Mesin & Migrasi:
    • Dukungan multi-mesin untuk MySQL / MariaDB dan PostgreSQL.
    • Mendeteksi tabel yang hilang, kolom yang hilang, perbedaan tipe, indeks, dan foreign key.
    • Ekspor Ganda: Menghasilkan skrip DDL native dan kode migrasi Laravel (Blueprint dengan metode up() dan down()). Tombol untuk membuka langsung di editor SQL Beekeeper Studio atau menyimpan sebagai .sql / .php.
  4. 🩺 Auditor Kesehatan & Performa (Health Auditor):
    • Skor Kesehatan Global (0 - 100) dengan indikator lampu lalu lintas dan penalti yang dapat dikonfigurasi.
    • Tabel tanpa Primary Key: Peringatan untuk tabel yang menurunkan performa dan replikasi berbasis baris (RBR).
    • Indeks Redundan: Mendeteksi indeks duplikat persis dan prefiks redundan yang memperlambat penulisan INSERT/UPDATE.
    • Rincian Penyimpanan: Analisis ukuran data vs indeks per tabel.
    • Monitor Proses Real-time: Lihat thread dan query aktif (SHOW PROCESSLIST / pg_stat_activity) dengan tombol untuk Menghentikan Query dengan aman (KILL QUERY <id>).
  5. 🧪 Generator Mock Data Cerdas & Pengisian Berantai (DAG):
    • Isi tabel apa pun dengan data realistis menggunakan Faker.
    • Isi Semua Secara Berantai (Graph Seeding): Menyelesaikan graf dependensi foreign key ke tabel kosong, mengisi tabel induk terlebih dahulu lalu menyisipkan ID-nya ke tabel anak secara otomatis.
    • Ekspor Seed: Ekspor ke .sql (INSERT INTO), .csv, dan .json.
  6. 🐳 Auto-Discovery (Docker & Proyek Lokal):
    • Mendeteksi container aktif (docker ps) MySQL, Postgres, MongoDB, Redis, ClickHouse, dan SQL Server beserta pemetaan port di host.
    • Mengambil kredensial dari file .env lokal, siap disimpan di Beekeeper.
  7. 📖 Kamus Data:
    • Ekspor dokumentasi teknis database dalam Markdown atau HTML statis.

📋 Prasyarat

  • Beekeeper Studio 5.4+
  • Node.js 18+ dan npm — hanya jika Anda menginstal lewat Opsi B (symlink/pengembangan). Installer native companion (Opsi A) tidak memerlukan Node.js.
  • mysql/mysqldump, psql/pg_dump, mongodump, docker (sesuai mesin yang Anda gunakan) — companion memanggilnya tetapi tidak menyertakannya; cek Tools ➔ DB Manager atau /api/status untuk melihat mana yang terdeteksi.
  • CLI sqlite3 (opsional, hanya untuk membaca koneksi yang sudah tersimpan di Beekeeper)

🔒 Privasi

Semua pemrosesan terjadi di mesin Anda. Companion daemon hanya mendengarkan di 127.0.0.1:58765 (loopback) dan tidak pernah berkomunikasi dengan server eksternal. Kredensial koneksi tidak pernah keluar dari perangkat Anda.


🚀 Instalasi dan Autostart

Opsi A: Marketplace Beekeeper Studio + installer native (direkomendasikan)

  1. Instal DB Manager Pro dari marketplace plugin Beekeeper Studio (Plugins ➔ cari “DB Manager Pro”).
  2. Saat pertama kali membuka alat yang memerlukan companion (Kloning Stream, Auto-Discovery, Schema Diff), Anda akan melihat peringatan “Companion Daemon no responde” dengan tombol Descargar Companion — tombol ini mengunduh file executable untuk sistem operasi Anda dari GitHub Releases, lalu buka dengan klik dua kali.
  3. Selesai: executable akan menginstal dirinya sendiri, mendaftar agar berjalan otomatis (Linux systemd --user, macOS LaunchAgent, Windows Startup), lalu langsung berjalan. Anda tidak perlu menginstal Node.js atau membuka terminal.

Installer ini belum ditandatangani (lihat docs/COMPANION.md), sehingga Windows/macOS akan menampilkan peringatan keamanan saat pertama kali — dokumen tersebut menjelaskan tombol mana yang harus ditekan untuk melanjutkan.

git clone https://github.com/JonathanHerSa/bks-db-manager.git
cd bks-db-manager
npm install
npm run build
ln -s "$(pwd)" ~/.config/beekeeper-studio/plugins/t3zca-db-manager

npm install langsung menjalankan companion daemon di latar belakang dan mengaturnya agar berjalan otomatis, mengarah ke repo hasil clone (bukan ke binary native) — tidak perlu perintah tambahan atau membuka terminal lagi untuk memakai plugin.

Beekeeper Studio 6.2+: sistem plugin menambahkan unlistedDisabled, yang aktif secara default. Agar Beekeeper memuat symlink pengembangan, tambahkan ini ke ~/.config/beekeeper-studio/user.config.ini:

[pluginSystem]
disabled = false
unlistedDisabled = false
communityDisabled = false

Pengelolaan layanan secara manual (opsional)

Anda hanya memerlukan ini jika menginstal dengan npm install --ignore-scripts, memindahkan folder proyek, atau ingin menonaktifkannya:

# (Re)instala el servicio en segundo plano manualmente
npm run daemon:install

# Comprueba que esté activo y respondiendo
npm run daemon:status

# Para desinstalarlo en cualquier momento
npm run daemon:uninstall

(Anda juga bisa menjalankannya sementara di terminal dengan npm run server jika lebih suka daripada layanan persisten).

Buka di Beekeeper Studio

  1. Buka Beekeeper Studio dan hubungkan ke database mana pun.
  2. Setiap alat tersedia langsung dari bilah atas di Tools:
    • Tools ➔ DB Manager: Snapshots & Backups
    • Tools ➔ DB Manager: Clonado Stream (A ➔ B)
    • Tools ➔ DB Manager: Schema Diff & Migraciones
    • Tools ➔ DB Manager: Auditor de Salud & Rendimiento
    • Tools ➔ DB Manager: Generador Mock Data
    • Tools ➔ DB Manager: Diccionario de Datos
    • Tools ➔ DB Manager: Auto-Discovery (Docker & .env)
    • Atau klik kanan pada tabel mana pun ➔ DB Manager: Mock Data para esta tabla.

Mode pengembangan dengan Hot Reload (opsional)

Untuk mengubah komponen Vue dan melihat perubahannya secara instan:

npm run dev

📦 Build dan Rilis

npm run build            # frontend del plugin -> dist/
npm run companion:build  # binario nativo del companion para tu SO -> build/

Setiap push tag vX.Y.Z memicu .github/workflows/release.yml, yang mem-build dan memublikasikan satu GitHub Release berisi:

  • manifest.json dan bks-db-manager-{version}.zip (frontend plugin, mengikuti proses publikasi Beekeeper Studio Plugins).
  • bks-db-manager-companion-{linux-x64,linux-arm64,darwin-arm64,win-x64}.{tar.gz,zip} + .sha256-nya (installer native companion, lihat docs/COMPANION.md) — tanpa versi di nama file, agar selalu bisa ditautkan dari /releases/latest/download/. macOS Intel (x64) masih tertunda karena bug Node.js yang belum selesai (nodejs/node#62893).

🤝 Kontribusi

Issue dan pull request sangat diterima. Sebelum membuka PR besar, buka issue terlebih dahulu untuk mendiskusikan perubahannya.

📄 Lisensi

Proyek ini dilisensikan di bawah GPLv3 — lihat LICENSE untuk teks lengkapnya.

👤 Pembuat

T3zcaDev — GitHub (@JonathanHerSa)