Einführung
OmniDB ist eine quelloffene, browserbasierte Anwendung für den Zugriff auf und die Verwaltung von vielen verschiedenen Datenbankverwaltungssystemen: PostgreSQL, MySQL, MariaDB, Oracle, MS SQL Server, Firebird und SQLite. OmniDB kann sowohl als Desktop-App als auch über den Browser laufen und vereint dabei die für unterschiedliche Zugriffswege nötige Flexibilität mit einem Design, das Sicherheit an erste Stelle setzt. OmniDB wird aktiv weiterentwickelt, automatisch mit einer Vielzahl von Datenbanken und Browsern getestet und verfügt über eine vollständige Dokumentation.
Seit den frühen Entwicklungsphasen wurde OmniDB als browserbasierte Anwendung konzipiert. Folglich läuft sie in jedem Browser, auf jedem Betriebssystem. Sie kann von mehreren Rechnern und mehreren Benutzern gleichzeitig genutzt werden, jeder mit seiner eigenen Gruppe von Verbindungen. Sie kann außerdem auf jedem Betriebssystem gehostet werden, ohne dass Abhängigkeiten installiert werden müssen. Weitere Details zur Installation folgen in den nächsten Kapiteln.
Das Hauptziel von OmniDB ist es, einen einheitlichen Arbeitsbereich mit allen Funktionen anzubieten, die für die Arbeit mit verschiedenen DBMS benötigt werden. DBMS-spezifische Werkzeuge sind nicht erforderlich: In OmniDB erfolgt der Kontextwechsel zwischen verschiedenen DBMS über einen einfachen Verbindungswechsel, ohne die Seite zu verlassen. Für den Endbenutzer fühlt es sich so an, als gäbe es keinen Unterschied zwischen der Arbeit mit verschiedenen DBMS — es fühlt sich einfach wie unterschiedliche Verbindungen an.
Trotzdem wurde OmniDB mit Blick auf Einfachheit entwickelt und als schnelle, schlanke browserbasierte Anwendung konzipiert. Lang laufende Vorgänge — Abfragen, Prozeduren und Monitoring — werden im Hintergrund ausgeführt und dem Browser gestreamt, sobald sie abgeschlossen sind, sodass der Benutzer gleichzeitig an mehreren Datenbanken und mehreren Hosts weiterarbeiten kann, ohne dabei durch einen einzelnen Vorgang blockiert zu werden.
OmniDB ist außerdem sicher. Datenbankpasswörter, die Sie speichern möchten, werden vor dem Speichern verschlüsselt, mit einem Schlüssel, der im Geheimnisspeicher Ihres Betriebssystems liegt; wenn Sie ein Passwort lieber gar nicht speichern, fragt OmniDB beim Verbinden danach und hält es nur für begrenzte Zeit im Arbeitsspeicher. Ein Mehrbenutzer-Server bietet zusätzlich einen Anmeldeschutz und schränkt ein, worauf Benutzer auf dem Serverrechner selbst zugreifen können — siehe Sicherheit und Mehrbenutzer-Server.
Neben dem SQL-Editor und dem Datenbankbaum bietet der Arbeitsbereich ein Live-Überwachungs-Dashboard, eine Liste der verbundenen Benutzer, einen Benachrichtigungs-Listener (LISTEN/NOTIFY und Verwandte), einen Rollen- und Privilegien-Browser für PostgreSQL, Snippets, Datenexport in viele Formate und SSH-Terminals. Die Oberfläche ist auf Englisch, Tschechisch, Deutsch, Spanisch, Französisch, Italienisch, Portugiesisch, Japanisch und Koreanisch verfügbar — siehe Einstellungen und Sprachen.
Geschichte
Die Erschaffer von OmniDB, Rafael Thofehrn Castro und William Ivanski, arbeiteten in einem Unternehmen, in dem sie täglich mit mehreren verschiedenen Kundendatenbanken zu tun hatten. Diese Datenbanken stammten aus unterschiedlichen DBMS-Technologien, weshalb sie ständig zwischen Datenbankverwaltungswerkzeugen wechseln mussten (typischerweise eines pro DBMS). Da sie von den bestehenden einheitlichen Datenbankverwaltungswerkzeugen (die verschiedene DBMS verwalten konnten) nicht überzeugt waren, entstand daraus die Grundidee von OmniDB.
Die erste Version von OmniDB wurde als Abschlussprojekt im Informatikstudium an der Bundesuniversität von Paraná in Brasilien vorgestellt. Ziel war es, eine gemeinsame Linie zwischen populären DBMS zu ziehen und deren Metadaten eingehend zu untersuchen. Das Ergebnis war ein in ASP.NET/C# geschriebenes Werkzeug, das in der Lage war, sich generisch mit mehreren DBMS zu verbinden und deren wichtigste Strukturen (Tabellen, Schlüssel, Indizes und Constraints) zu erkennen:
- Firebird
- MariaDB/MySQL
- Oracle
- PostgreSQL
- SQLite
- Microsoft SQL Server
Die erste Version von OmniDB ermöglichte außerdem die Konvertierung zwischen allen vom Werkzeug unterstützten DBMS. Diese Funktion wurde benutzerfreundlich gestaltet und erforderte nur wenige Schritte: Der Benutzer muss eine Quellverbindung auswählen, die zu konvertierenden Strukturen (einfach Tabellen und alle ihre Strukturen, samt ihrer Daten) sowie die Zielverbindung.
In den Jahren 2025–2026 wurde das Projekt mit größeren Releases (3.1.x) wiederbelebt, mit Fokus auf die Modernisierung der Codebasis, die Verbesserung der Sicherheit und die vollständige Unterstützung moderner Betriebssysteme wie macOS Silicon, zusammen mit einer vollständigen Überarbeitung der Dokumentation. Diese Wiederbelebung gipfelte in einer kompletten Neufassung des Backends von Python/Django nach Go (3.6.x), wodurch die Python-Laufzeitumgebung vollständig entfernt wurde und stattdessen für jede Plattform eine einzige native Binärdatei ausgeliefert wird. Die vollständige Versionshistorie und alle Änderungen im Verlauf finden Sie unter Legacy-Funktionen & Historie.