.NET

Úvod

OmniDB je open source aplikace dostupná z prohlížeče, navržená pro přístup k mnoha různým systémům pro správu databází (DBMS) a jejich správu, např. PostgreSQL, Oracle a MySQL. OmniDB může běžet buď jako desktopová aplikace, nebo přes prohlížeč, čímž kombinuje flexibilitu potřebnou pro různé způsoby přístupu s návrhem, který na první místo staví bezpečnost. OmniDB je aktivně vyvíjena, automaticky testována na řadě databází a prohlížečů a je dodávána s kompletní dokumentací.

Od raných fází vývoje byla OmniDB navržena jako aplikace dostupná z prohlížeče. Díky tomu běží v jakémkoli prohlížeči, na jakémkoli operačním systému. Může k ní přistupovat několik počítačů a více uživatelů, každý z nich s vlastní skupinou připojení. Lze ji také provozovat na libovolném operačním systému, aniž by bylo nutné instalovat jakékoli závislosti. Podrobnosti o instalaci si ukážeme v následujících kapitolách.

Hlavním cílem OmniDB je nabídnout jednotný pracovní prostor se všemi funkcemi potřebnými pro práci s různými DBMS. Nástroje specifické pro konkrétní DBMS nejsou potřeba: v OmniDB se přepínání kontextu mezi různými DBMS provádí prostým přepnutím připojení, aniž byste opustili stejnou stránku. Koncový uživatel má pocit, že při práci s různými DBMS není žádný rozdíl, jednoduše to působí jako různá připojení.

Přesto je OmniDB navržena s důrazem na jednoduchost, jako rychlá a odlehčená aplikace dostupná z prohlížeče. Dlouho běžící operace — dotazy, procedury a monitorování — se vykonávají na pozadí a jejich výsledky se do prohlížeče streamují postupně, jak jsou dokončovány, takže uživatel může nadále pracovat s více databázemi a více servery současně, aniž by ho jakákoli z nich blokovala.

OmniDB je také bezpečná. Veškerá uživatelská data OmniDB jsou uchovávána zašifrovaná a žádné heslo k databázi se vůbec neukládá. Když se uživatel poprvé připojí k databázi, OmniDB si vyžádá heslo. Toto heslo je zašifrováno a uloženo v paměti po určitou dobu. Po jejím vypršení si OmniDB vyžádá heslo znovu. To zajišťuje maximální bezpečnost databáze, k níž se OmniDB připojuje.

Historie

Tvůrci OmniDB, Rafael Thofehrn Castro a William Ivanski, pracovali ve firmě, kde denně potřebovali pracovat s několika různými databázemi zákazníků. Tyto databáze pocházely z různých technologií DBMS, a tak museli neustále přepínat mezi nástroji pro správu databází (typicky jeden pro každý DBMS). Protože nebyli spokojeni s existujícími nástroji pro jednotnou správu databází (schopnými spravovat různé DBMS), přišli s hlavní myšlenkou OmniDB.

První verze OmniDB byla představena jako bakalářská závěrečná práce v oboru informatiky na Federální univerzitě v Paraná v Brazílii. Cílem bylo najít společnou linii mezi populárními DBMS a důkladně prostudovat jejich metadata. Výsledkem byl nástroj napsaný v ASP. NET/C#, schopný obecným způsobem se připojit a identifikovat hlavní struktury (tabulky, klíče, indexy a omezení) u několika DBMS:

První verze OmniDB také umožňovala převod mezi všemi DBMS podporovanými nástrojem. Tato funkce byla navržena tak, aby byla uživatelsky přívětivá a vyžadovala jen pár kroků: uživatel musí vybrat zdrojové připojení, struktury, které se mají převést (pouze tabulky a všechny jejich struktury, včetně jejich dat) a cílové připojení.

V letech 2025–2026 byl projekt oživen velkými verzemi (3.1.x), zaměřenými na modernizaci kódové základny, zvýšení bezpečnosti a přidání plné podpory moderních operačních systémů, jako je macOS Silicon, spolu s celkovým přepracováním dokumentace. Toto oživení vyvrcholilo úplným přepsáním backendu z Python/Django na Go (3.6.x), díky čemuž byl runtime Pythonu zcela odstraněn a pro každou platformu se nyní dodává jediná nativní binárka. Úplný přehled verzí a co se v průběhu času změnilo najdete v části Starší funkce a historie.