Plugin dan rangkaian alat canggih untuk Beekeeper Studio (v5.4+). Dikembangkan oleh T3zcaDev.
✨ Fitur Utama
- 📸 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
CompressionStreamjika sedang offline. - Penjelajah snapshot lokal dengan tanggal, ukuran, dan mesin, plus pemulihan terpandu dengan modal konfirmasi dan proteksi anti path-traversal.
- Backup yang dikompresi secara langsung dengan Zstandard (
- 🔄 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.
- ⚖️ 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 (
Blueprintdengan metodeup()dandown()). Tombol untuk membuka langsung di editor SQL Beekeeper Studio atau menyimpan sebagai.sql/.php.
- 🩺 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>).
- 🧪 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.
- 🐳 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
.envlokal, siap disimpan di Beekeeper.
- Mendeteksi container aktif (
- 📖 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; cekTools ➔ DB Manageratau/api/statusuntuk 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)
- Instal DB Manager Pro dari marketplace plugin Beekeeper Studio (
Plugins➔ cari “DB Manager Pro”). - 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.
- Selesai: executable akan menginstal dirinya sendiri, mendaftar agar berjalan otomatis (Linux
systemd --user, macOSLaunchAgent, WindowsStartup), 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.
Opsi B: Symlink untuk pengembangan/kontribusi
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
- Buka Beekeeper Studio dan hubungkan ke database mana pun.
- Setiap alat tersedia langsung dari bilah atas di
Tools:Tools➔DB Manager: Snapshots & BackupsTools➔DB Manager: Clonado Stream (A ➔ B)Tools➔DB Manager: Schema Diff & MigracionesTools➔DB Manager: Auditor de Salud & RendimientoTools➔DB Manager: Generador Mock DataTools➔DB Manager: Diccionario de DatosTools➔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.jsondanbks-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)