Vergleich SQLite ↔ klassische SQL-Datenbank (MySQL/MariaDB)
SQLite vs. klassische SQL-Datenbanken – und wo JSON hineinpasst
Wer mit PHP oder Webanwendungen arbeitet, steht früher oder später vor der Frage: SQLite oder doch eine „richtige“ SQL-Datenbank? Und dann taucht oft noch ein drittes Schlagwort auf: JSON. Dieser Artikel bringt Ordnung in das Thema.
1. Was ist SQLite?
SQLite ist eine serverlose SQL-Datenbank. Sie besteht im Kern aus einer einzigen Datei (z. B. datenbank.db), die direkt von der Anwendung gelesen und beschrieben wird.
Es gibt keinen Datenbank-Server, keinen Benutzer-Login auf DB-Ebene und keine laufenden Dienste im Hintergrund. Deine Anwendung greift direkt auf die Datei zu.
Typische Einsatzgebiete
- kleine bis mittlere Webprojekte
- Single-User- oder Low-Traffic-Anwendungen
- Desktop-Programme
- Prototypen und Tests
- Konfigurations- oder Cache-Daten
SQLite unterstützt einen großen Teil von SQL (SELECT, JOINs, Indizes, Transaktionen), fühlt sich also „wie eine echte Datenbank“ an – nur ohne Server.
2. Klassische SQL-Datenbanken (MySQL / MariaDB / PostgreSQL)
Klassische SQL-Datenbanken arbeiten mit einem separaten Datenbank-Server. Die Webanwendung verbindet sich über Netzwerk oder Socket mit diesem Server.
Der Server verwaltet:
- mehrere gleichzeitige Verbindungen
- Benutzer & Rechte
- Parallelzugriffe (Locks, Transaktionen)
- Replikation und Backups
Diese Architektur ist auf Wachstum, Performance und Mehrbenutzerbetrieb ausgelegt.
3. SQLite vs. klassische SQL-Datenbank – der direkte Vergleich
| Kriterium | SQLite | MySQL / MariaDB |
|---|---|---|
| Installation | keine (Datei) | Server nötig |
| Performance | sehr gut bei wenig Zugriffen | stabil bei vielen Zugriffen |
| Parallelzugriffe | eingeschränkt | sehr gut |
| Benutzer & Rechte | nein | ja |
| Backup | Datei kopieren | Tools & Dumps |
Kurz gesagt: SQLite ist leicht, elegant und genügt oft völlig – klassische SQL-Datenbanken spielen ihre Stärke bei größeren Systemen aus.
4. Und wo passt JSON ins Spiel?
JSON ist keine Datenbank, sondern ein Datenformat. Es wird häufig genutzt, um strukturierte Daten flexibel abzulegen oder auszutauschen.
JSON als Datei
Eine JSON-Datei kann für sehr kleine Projekte oder Konfigurationen ausreichen:
{
"title": "Mein Projekt",
"version": "1.0",
"debug": true
}
Vorteil: einfach, menschlich lesbar. Nachteil: keine Abfragen, keine Transaktionen, keine Parallelität.
JSON in SQL-Datenbanken
Moderne SQL-Datenbanken (auch SQLite) können JSON in Spalten speichern. Das ist sinnvoll, wenn:
- Daten sehr unterschiedlich aufgebaut sind
- Felder sich häufig ändern
- Zusatzinformationen optional sind
Typisches Beispiel: flexible Einstellungen, Metadaten oder Plugin-Konfigurationen. Die Kern-Daten bleiben relational, das „Flexible“ steckt im JSON.
5. Was solltest du wann verwenden?
- SQLite → kleine bis mittlere Projekte, wenig gleichzeitige Nutzer, einfache Installation.
- MySQL / MariaDB → größere Websites, viele Nutzer, Rollen & Rechte, langfristige Skalierung.
- JSON → Ergänzung, nicht Ersatz für eine Datenbank.
In der Praxis ist die Kombination oft ideal: SQL für Struktur + JSON für Flexibilität.