DB Manager — Benutzerhandbuch | YoBench
So verwenden Sie das Modul „DB Manager" in YoBench: MySQL, PostgreSQL, MongoDB, SQLite und MS SQL, ER-Diagramme, SQL-Editor mit KI, Schema Compare, geplante Backups.
Was das Modul „DB Manager" leistet
DB Manager ist eine zentrale Werkbank für relationale und Dokumenten-Datenbanken — direkt aus YoBench heraus. Statt zwischen mehreren Tools (DBeaver, pgAdmin, mysql-cli, MongoDB Compass) hin und her zu wechseln, verbinden Sie sich aus einer einzigen App: durchsuchen das Schema, führen Abfragen aus, generieren SQL per KI, vergleichen Schemata, erledigen geplante Backups und überwachen den Zustand der Verbindungen.
Was Sie bekommen:
- Sechs Datenbank-Engines — MySQL, MariaDB, PostgreSQL, SQLite, MS SQL Server, MongoDB.
- Schema-Explorer — vollständiger Baum aus Datenbanken / Schemata / Tabellen / Views / Prozeduren mit Struktur, Indizes, Fremdschlüsseln und Triggern.
- SQL-Editor mit Abfragehistorie, Ergebnis-Export nach CSV / JSON / XLSX und einer Sicherheitsgrenze von 10 000 Zeilen.
- KI-SQL-Generierung — beschreiben Sie in natürlicher Sprache, was Sie brauchen, und erhalten Sie einen Entwurf, der an den aktuellen Datenbank-Kontext gebunden ist.
- ER-Diagramm mit automatischem Dagre-Layout, Fremdschlüssel-Kanten sowie Zoom und Verschieben.
- Schema Compare und Sync — zwei Schemata diffen, ein
ALTER-Skript erzeugen und auf das Ziel anwenden. - Backups — manueller Dump / Restore plus ein Scheduler mit Cron, Datei-Rotation und Lauf-Historie.
- Verbindungs-Monitoring — Health Checks, Latenz, Server-Version-Banner.
- Verschlüsselte Geheimnisse — Passwörter, SSL-Schlüssel und SSH-Schlüssel werden verschlüsselt in der lokalen DB abgelegt; der Renderer sieht nur
has_password-Flags.
Unterstützte Engines und Verbindungsoptionen
| Engine | Standard-Port | Hinweise |
|---|---|---|
| MySQL | 3306 | TCP/IP, optional SSL |
| MariaDB | 3306 | Gleiche Protokoll-Familie wie MySQL |
| PostgreSQL | 5432 | SSL-Modi: disable, require, verify-ca, verify-full |
| MS SQL Server | 1433 | TCP/IP |
| MongoDB | 27017 | authSource-Parameter für die Auth-Datenbank |
| SQLite | — | Lokale Datei, kein Host und kein Port |
Für TCP-basierte Engines können SSH-Tunnel-Zugangsdaten im Verbindungsdatensatz hinterlegt werden (das Feld ist für eine künftige UI-Anzeige reserviert). Alle sensiblen Felder — Passwort, SSL-Schlüssel, SSH-Passwort, privater SSH-Schlüssel — werden verschlüsselt gespeichert.
Workbench
Jede geöffnete Verbindung lebt in einem eigenen Tab. Ein Fenster kann bis zu 10 aktive Sitzungen aufnehmen (Renderer-gebunden). Headless-Sitzungen, die der Scheduler, Backups und Health Checks nutzen, laufen in einem separaten Pool.
Die Workbench bietet:
- Schema-Baum auf der linken Seite — vom Verbindungs-Root bis hinunter zu einer einzelnen Tabelle oder View.
- Object Inspector — Spalten mit Typen und Nullability, Indizes (inkl. Eindeutigkeit), Constraints, Fremdschlüssel und Trigger.
- Datenansicht — paginierte Zeilen mit spaltenweisen Filtern. Zellen sind auf 64 KB begrenzt; das Result Set liefert ein
truncated-Flag, wenn die Zeilenzahl 10 000 überschreitet. - SQL-Editor — Abfrage schreiben oder einfügen, ausführen, tabellarische Ergebnisse anzeigen, durch die History zurückspringen.
- DDL-Ansicht — vollständiges
CREATE-Skript für die ausgewählte Tabelle oder die ganze Datenbank. - ER-Diagramm — interaktiver React-Flow-Canvas mit Dagre-Auto-Layout für Tabellen und FK-Kanten.
SQL-Editor und KI-Generierung
Der SQL-Editor akzeptiert beliebige Statements für die verbundene Engine. Die Ergebnisse landen in einer sortierbaren Tabelle mit spaltenweisen Filtern und drei Export-Formaten: CSV, JSON und XLSX. Jede ausgeführte Abfrage wird in der Query History der Verbindung abgelegt, damit Sie sie später erneut ausführen oder kopieren können.
KI-SQL-Generierung ist verfügbar, sobald ein KI-Anbieter unter Einstellungen → DB Manager konfiguriert ist:
- Öffnen Sie das KI-Eingabefeld oberhalb des Editors.
- Beschreiben Sie, was Sie wollen (z. B. „Top 10 Kunden nach Umsatz in den letzten 30 Tagen").
- Die aktuelle Datenbank / das aktuelle Schema werden als Kontext mitgesendet, die KI liefert einen Entwurf, Sie prüfen und führen ihn aus.
Wenn kein Anbieter ausgewählt ist, bleibt der KI-Button deaktiviert — Abfragen funktionieren weiter, lediglich der Generierungsschritt steht nicht zur Verfügung.
Schema Compare und Sync
Wählen Sie zwei Schemata (aus derselben Verbindung oder aus zwei verschiedenen), starten Sie Schema Compare und prüfen Sie das Diff:
- Tabellen:
added,removed,altered,identical. - Bei geänderten Tabellen: spaltenbezogene Änderungen (hinzugefügte / entfernte Spalten, Typänderungen, geänderte Defaults / Nullability, Index-Änderungen).
- Erzeugtes Sync-Skript — eine ausführbare Folge aus
ALTER/CREATE/DROP, die das Ziel auf den Stand der Quelle bringt. - Optional: Export des Skripts auf die Festplatte, bevor es ausgeführt wird.
Typische Einsatzfälle: Änderungen aus Staging in Produktion übernehmen oder prüfen, ob zwei Replikas auseinanderlaufen.
Backup und Restore
Einmaliger Dump. Rechtsklick auf eine Verbindung → Backup. Der Dump landet als ZIP-Archiv mit JSON-Manifest und Datenbank-Inhalt. Sie können ein- oder ausschließen:
- Datenzeilen
- Views, Stored Procedures, Funktionen
- Grants
Restore. Öffnen Sie eine Ziel-Verbindung (oder legen Sie eine neue für eine leere Datenbank an) → Restore → wählen Sie ein Dump-Archiv → bestätigen Sie die Überschreibungs-Policy.
Geplante Backups. Im Panel Backup Schedules einer Verbindung:
- Einen Cron-Ausdruck oder ein Preset wählen (täglich, wöchentlich, alle N Stunden).
- Einen Zielordner festlegen.
- Rotation einstellen: die N neuesten Archive behalten.
- Optional Run Now, um den Zeitplan ohne Wartezeit zu validieren.
Im Panel Backup History sehen Sie jeden Lauf mit Status, Archivgröße und Dauer. Fehlgeschlagene Läufe enthalten die Fehlermeldung.
Verbindungs-Monitoring
Jede Verbindung hat ein optionales Monitoring-Flag mit einem Intervall (Standard: 5 Minuten). Bei aktiviertem Monitoring führt die Workbench:
- einen Engine-spezifischen Liveness-Check als Ping aus,
- erfasst die Latenz in Millisekunden,
- speichert das aktuelle Server-Versions-Banner,
- zeigt einen Statusindikator in der Verbindungs-Liste an.
Die Historie wird lokal gespeichert und speist das Monitoring-Panel im Workbench-Tab.
Eingebettete DB-Tasks
Jede Verbindung kann eigene DB-Tasks beherbergen — periodische SQL-Skripte (Cleanup, Materialized View Refresh, Statistiken). Ein Task hat:
- einen Namen und den SQL-Body,
- einen Zeitplan (Cron-Style),
- einen Aktiv/Inaktiv-Schalter,
- eine Lauf-Historie mit Status:
success,error,timeout.
DB-Tasks unterscheiden sich vom AI Task Scheduler: sie sind reines SQL, an eine einzige Verbindung gebunden, ohne KI-Beteiligung.
Einstellungen
Unter Einstellungen → DB Manager:
- KI-Anbieter — welcher Anbieter den KI-SQL-Prompt beantwortet. Standard: leer.
Die verbindungsspezifischen Einstellungen liegen im Verbindungsformular: Name, Engine, Host, Port, Datenbank, Benutzer, Passwort, SSL-Modus, SQLite-Dateipfad, Monitoring-Intervall und Engine-spezifische Extras (z. B. MongoDB-authSource).
Ablauf
1. Verbindung anlegen
- DB Manager in der Seitenleiste öffnen.
- Tab Connections → New connection.
- Engine wählen — das Formular zeigt nur die relevanten Felder.
- Host / Port / Datenbank / Benutzer / Passwort eintragen (oder den Dateipfad bei SQLite).
- Test klicken — Sie sehen die Server-Version und die Round-Trip-Latenz.
- Speichern.
2. Workbench öffnen
- Open in der Verbindungs-Zeile klicken → ein neuer Tab öffnet sich.
- Im Schema-Baum navigieren, eine Tabelle doppelklicken, um Daten und Struktur zu inspizieren.
- Zum SQL Editor wechseln, um Statements auszuführen.
3. Backups planen
- Im Verbindungsmenü Backup Schedules wählen.
- New Schedule → Ordner, Cron-Ausdruck, Aufbewahrung.
- Run Now zur Verifikation oder auf den nächsten Cron-Tick warten.
- Läufe unter Backup History kontrollieren.
4. Schemata vergleichen
- Im Verbindungsmenü Schema Compare wählen.
- Source und Target auswählen (Datenbank + Schema).
- Compare → das Diff prüfen.
- Generate Sync Script → SQL prüfen → Execute oder Save to file.
Nächste Schritte
- Konfigurieren Sie einen KI-Anbieter, um die KI-SQL-Generierung zu aktivieren.
- Nutzen Sie den AI Task Scheduler, wenn ein LLM nach Zeitplan eine Abfrage ausführen, das Ergebnis zusammenfassen und irgendwo posten soll.
- Für Last- und Kapazitätstests der Datenbank selbst kann das Modul Lasttests HTTP-Endpoints davor ansteuern.
Hilfe und Feedback
Bug gefunden oder eine zusätzliche Engine vorzuschlagen? Schreiben Sie uns über das Feedback-Formular.