Was tun bei digiKam unter Linux Cinnamon: „Sie besitzen nicht die notwendigen Rechte für die Datenbank. CREATE TABLE“?

Antwort vom

**Die Meldung bedeutet fast immer: digiKam kann in der verwendeten Datenbank keine Tabellen anlegen – entweder wegen fehlender Schreibrechte auf die Datenbankdatei bzw. den Datenbankordner oder wegen zu wenig Rechten beim Datenbank-Benutzer.** ## Was konkret dahintersteckt `CREATE TABLE` ist kein normaler Lesezugriff, sondern ein Schreibzugriff auf die Datenbankstruktur. Wenn digiKam dabei scheitert, liegt die Ursache meist in einem dieser Punkte: - der Ordner mit der Datenbank gehört einem anderen Benutzer - die Datenbankdateien wurden einmal mit `sudo` erstellt - der Datenbankpfad liegt auf einem Datenträger mit falschen Mount-Rechten - bei MySQL/MariaDB hat der verwendete Benutzer keine `CREATE`-Rechte - die Datenbank ist schreibgeschützt oder beschädigt Der wichtigste Unterschied ist also: **Bei SQLite geht es meist um Dateirechte, bei MySQL/MariaDB um Benutzerrechte in der Datenbank.** ## Der häufigste Fall: SQLite-Datei gehört root oder ist nicht beschreibbar digiKam nutzt oft SQLite, wenn keine externe Datenbank eingerichtet wurde. Prüfe zuerst, wem die Datenbankdateien und der Ordner gehören. Typische Orte sind dein Home-Verzeichnis oder der digiKam-Konfigurationsordner. Im Terminal: ```bash find ~ -iname "*digikam*" -ls ``` Achte darauf, ob Dateien oder Ordner `root root` gehören. Dann hat digiKam als normaler Benutzer dort oft keine Schreibrechte. Reparatur meist so: ```bash sudo chown -R $USER:$USER ~/.config/digikam* sudo chown -R $USER:$USER ~/.local/share/digikam* ``` Falls deine Datenbank an einem anderen Ort liegt, musst du genau diesen Pfad übernehmen. Zusätzlich Rechte prüfen: ```bash ls -ld ~/.config ~/.local/share ls -l ~/.local/share | grep -i digikam ``` ## Wenn die Datenbank auf einer externen Platte liegt Dann ist oft nicht digiKam das Problem, sondern das Dateisystem oder der Einhängepunkt. Wichtig: - **NTFS/exFAT/Linux-fremde Dateisysteme** können Rechte anders behandeln - ein nur lesbar eingehängtes Laufwerk verhindert `CREATE TABLE` komplett - nach einem unsauberen Abziehen wird ein Datenträger manchmal nur read-only eingebunden Prüfen: ```bash mount | grep -i "/media\|/mnt" ``` Wenn dort `ro` steht, ist das Laufwerk nur lesbar eingebunden. Dann hilft oft: - Datenträger sauber neu einhängen - Dateisystem prüfen - Datenbank besser in dein Home-Verzeichnis legen statt auf ein problematisches externes Medium Gerade bei digiKam ist das praktisch oft die beste Lösung: **Bilder können auf externer Platte liegen, die Datenbank sollte möglichst lokal auf einem Linux-Dateisystem liegen.** ## Wenn du MySQL oder MariaDB verwendest Dann musst du nicht Dateirechte, sondern SQL-Rechte prüfen. Der verwendete Datenbankbenutzer braucht mindestens Rechte wie: - `CREATE` - `ALTER` - `INSERT` - `UPDATE` - `DELETE` - `SELECT` - `INDEX` Typischer Test in MariaDB/MySQL: ```sql SHOW GRANTS FOR 'dein_benutzer'@'localhost'; ``` Falls nötig, Rechte vergeben: ```sql GRANT ALL PRIVILEGES ON digikam.* TO 'dein_benutzer'@'localhost'; FLUSH PRIVILEGES; ``` Entscheidend ist hier: **Wenn digiKam die Datenbank zwar erreicht, aber keine Tabellen anlegen darf, ist fast immer die Rechtevergabe des DB-Benutzers unvollständig.** ## Auch wichtig: nie mit sudo starten Wenn du digiKam einmal mit `sudo digikam` oder als Root gestartet hast, erzeugt das oft genau solche Folgefehler. Denn dann gehören Konfigurations- oder Datenbankdateien plötzlich root. Deshalb: - digiKam nie als Root starten - falsch erzeugte Dateien wieder deinem Benutzer zuordnen ## Sinnvolle Reihenfolge zur Lösung ## 1. Prüfen, welche Datenbank digiKam nutzt In digiKam unter den Datenbank-Einstellungen nachsehen: - SQLite - MySQL/MariaDB ## 2. Bei SQLite Dateirechte korrigieren Besitzer und Schreibrechte des Datenbankordners prüfen. ## 3. Datenbankpfad prüfen Liegt sie auf externer Platte, Netzwerkfreigabe oder read-only-Medium, Pfad ändern. ## 4. Bei MySQL/MariaDB Benutzerrechte prüfen Fehlende `CREATE`-Rechte nachtragen. ## 5. Testweise neue leere Datenbank anlegen Wenn möglich, digiKam auf einen neuen lokalen Datenbankpfad zeigen. Funktioniert das, ist die Ursache fast sicher der alte Pfad oder dessen Rechte. ## Praktisch die beste Lösung **Am häufigsten behebst du das Problem, indem du die digiKam-Datenbank in einen lokalen Ordner in deinem Home-Verzeichnis legst und alle dortigen Dateien wieder deinem Benutzer gehören lässt.** Das ist robuster als eine Datenbank auf externer USB-Platte, NTFS oder einem mit Root-Rechten vermischten Ordner. Wenn du die genaue Ursache eingrenzen willst, sind diese drei Befehle meist am aussagekräftigsten: ```bash whoami find ~ -iname "*digikam*" -ls mount | grep -i "/media\|/mnt" ``` Die Ausgabe zeigt in vielen Fällen schon direkt, ob es ein Eigentümer-, Pfad- oder Mount-Problem ist.

Kategorie: Technik Tags: Linux Digikam Datenbank

Verwandte Fragen

Warum kann ich unter Linux Mint in Elster keine Dokumente oder Nachrichten abrufen?

Unter Linux Mint liegt das Problem meist nicht an Linux selbst, sondern daran, dass Mein ELSTER Dokumente im Postfach und Belege nur unter bestimmten Voraussetzungen freigibt oder lokal als PDF/Downlo...

Wird in Deutschland auf Linux umgestellt?

Nein – Deutschland stellt nicht insgesamt auf Linux um. Real läuft der Umstieg nur punktuell, vor allem in Schleswig-Holstein; bundesweit bleibt Windows in der Verwaltung auf absehbare Zeit...

Wie verschlüssele ich in Linux Cinnamon eine mit LibreOffice erstellte Excel-Datei mit einem Passwort?

Am einfachsten geht das direkt in LibreOffice Calc über „Speichern unter“ mit Passwort. Entscheidend ist aber: echte Dateiverschlüsselung funktioniert in LibreOffice zuverlä...

Wie starte ich Linux Cinnamon ohne Passwortabfrage?

Wenn du Linux Mint Cinnamon ohne Passwortabfrage starten willst, musst du die automatische Anmeldung aktivieren; dadurch landet jeder mit physischem Zugriff direkt in deinem Benutzerkonto. So geht es...