Ich habe einen Server, auf dem ich mittels Mediawiki ein eigenes Wiki pflege.
Bis zu einem Update vor einer Woche funktionierte das Ganze auch einwandfrei, seit dem Update bekomme ich aber eine Fehlermeldung, dass nicht auf die Datenbank zugegriffen werden kann.
Ich habe mein Wiki mit folgenden Komponenten aufgesetzt:
- mediawiki (Mediawiki) mit php8
- sqlite für die Datenbanken
- lighttpd als Webserver
Bei der Aktualisierung am 03.05.25 wurden folgende Aktualisierungen vorgenommen (php-cgi & php-sqlite haben immer die selbe Versionsnummer wie php):
- mediawiki: 1.42.1-1 -> 1.43.1-1
- php: 8.3.9-1 -> 8.4.6-2
- sqlite: 3.46.0-1 -> 3.49.1-1
- lighttpd: 1.4.76-1 -> 1.4.79-2
Am 10.05. habe ich im Rahmen einer Fehlersuche nochmals ein Update durchgeführt:
- mediawiki: 1.43.1-1
- php: 8.4.6-2 -> 8.4.7-1
- sqlite: 3.49.1-1 -> 3.49.2-1
- lighttpd: 1.4.79-2
Der Fehler blieb bestehen. Nach jeder Aktualisierung von Mediawiki habe ich php maintenance/run.php update
durchgeführt.
Nach Aktivierung des entsprechenden Flags in der LocalSettings.php
erhalte ich folgende Fehlermeldung:
MediaWiki internal error.
Original exception: [b923ab9115bdc4186a4ba4d9] /mediawiki/index.php?title=Hauptseite Wikimedia\Rdbms\DBConnectionError: Cannot access the database: Error 14: unable to open database file
Function: Wikimedia\Rdbms\DatabaseSqlite::open
Query: PRAGMA synchronous = NORMAL
Backtrace:
from /usr/share/webapps/mediawiki/includes/libs/rdbms/database/Database.php(1221)
#0 /usr/share/webapps/mediawiki/includes/libs/rdbms/database/DatabaseSqlite.php(230): Wikimedia\Rdbms\Database->newExceptionAfterConnectError()
#1 /usr/share/webapps/mediawiki/includes/libs/rdbms/database/Database.php(263): Wikimedia\Rdbms\DatabaseSqlite->open()
#2 /usr/share/webapps/mediawiki/includes/libs/rdbms/database/DatabaseFactory.php(157): Wikimedia\Rdbms\Database->initConnection()
#3 /usr/share/webapps/mediawiki/includes/language/LCStoreDB.php(143): Wikimedia\Rdbms\DatabaseFactory->create()
#4 /usr/share/webapps/mediawiki/includes/language/LCStoreDB.php(56): LCStoreDB->getWriteConnection()
#5 /usr/share/webapps/mediawiki/includes/language/LocalisationCache.php(566): LCStoreDB->get()
#6 /usr/share/webapps/mediawiki/includes/language/LocalisationCache.php(612): LocalisationCache->isExpired()
#7 /usr/share/webapps/mediawiki/includes/language/LocalisationCache.php(479): LocalisationCache->initLanguage()
#8 /usr/share/webapps/mediawiki/includes/language/LocalisationCache.php(381): LocalisationCache->loadItem()
#9 /usr/share/webapps/mediawiki/includes/language/Language.php(567): LocalisationCache->getItem()
#10 /usr/share/webapps/mediawiki/includes/title/MediaWikiTitleCodec.php(120): MediaWiki\Language\Language->needsGenderDistinction()
#11 /usr/share/webapps/mediawiki/includes/title/Title.php(1157): MediaWiki\Title\MediaWikiTitleCodec->getNamespaceName()
#12 /usr/share/webapps/mediawiki/includes/page/Article.php(494): MediaWiki\Title\Title->getNsText()
#13 /usr/share/webapps/mediawiki/includes/actions/ViewAction.php(78): Article->view()
#14 /usr/share/webapps/mediawiki/includes/actions/ActionEntryPoint.php(733): ViewAction->show()
#15 /usr/share/webapps/mediawiki/includes/actions/ActionEntryPoint.php(510): MediaWiki\Actions\ActionEntryPoint->performAction()
#16 /usr/share/webapps/mediawiki/includes/actions/ActionEntryPoint.php(146): MediaWiki\Actions\ActionEntryPoint->performRequest()
#17 /usr/share/webapps/mediawiki/includes/MediaWikiEntryPoint.php(200): MediaWiki\Actions\ActionEntryPoint->execute()
#18 /usr/share/webapps/mediawiki/index.php(58): MediaWiki\MediaWikiEntryPoint->run()
#19 {main}
Die Datenbankdatei ist auch vorhanden. Wenn ich diese mit sqlite3 bp_wiki.sqlite
als root öffne und mit sqlite> .database
abfrage, erhalte ich folgende Ausgabe:
main: /usr/share/webapps/data/bp_wiki.sqlite r/w
was ja bedeutet, dass die Datenbank les- und schreibbar ist.
Wo liegt die Ursache der Fehlermeldung von Mediawiki?
Danke