Remedierea erorii „Database Error” din Nextcloud WebGUI după o actualizare: Ghid practic de recuperare

Un mesaj Nextcloud WebGUI, cum ar fi Excepție: Eroare bază de date, imediat după o actualizare, înseamnă de obicei că aplicația web se poate încărca suficient de departe pentru a ajunge la stratul bazei de date, dar o interogare, o migrare, o așteptare de schemă, o conexiune sau o operațiune specifică aplicației în baza de date eșuează. Nu începeți prin a șterge tabele, a reinstala Nextcloud sau a restaura un director de cod vechi peste cel nou. Secvența mai sigură este să identificați codul SQL sau migrarea eșuată, să finalizați calea de actualizare acceptată, să reparați doar ceea ce Nextcloud știe cum să repare și să verificați serviciul și schema bazei de date înainte de a redeschide accesul.

Această referință respectă documentația actuală de administrare Nextcloud 35 disponibilă în octombrie 2026. Comenzile de mai jos presupun o instalare obișnuită în stil Debian/Ubuntu la /var/www/nextcloudcu utilizatorul serverului web www-data. Ajustați calea, fișierul binar PHP, comanda containerului sau utilizatorul HTTP pentru implementarea dvs.

Diagnostic rapid: la ce indică de obicei eroarea

Ceea ce vedețiRamură probabilăPrima verificare
Eroarea a apărut imediat după înlocuirea fișierelor NextcloudMigrările bazelor de date/aplicațiilor nu au fost finalizateocc statusșiocc upgrade
Jurnalul spune că un tabel sau o coloană nu existăMigrare incompletă, nepotrivire a aplicației sau deviere a schemeiocc upgrade, apoi inspecția schemei
Jurnalul spune că conexiunea a fost refuzată, că nu există un astfel de fișier sau că serverul a dispărut.Problemă legată de serviciul bazei de date, socket, gazdă, acreditări sau versiuneServiciu de bază de date șiconfig.php
Eroarea face referire la un spațiu de nume pentru aplicații terțe sau la tabelele saleAplicația este incompatibilă sau migrarea acesteia a eșuatDezactivați aplicația respectivă din CLI și încercați din nou actualizarea.
Prezentarea generală a administratorului raportează lipsă de indexuri/coloane/chei primareLucrările opționale de schemă post-upgrade rămândb:add-missing-*Executați comenzile documentate
Pagina browserului Nextcloud afișează o excepție și o eroare de bază de date după o actualizare
O excepție a bazei de date în WebGUI este un simptom. Dovada utilă este intrarea de jurnal corespunzătoare și starea de actualizare, nu doar mesajul generic al browserului.

1. Păstrați starea curentă înainte de a face modificări în baza de date

Dacă încă aveți copia de rezervă pre-actualizare, păstrați-o intactă. Nextcloud recomandă în mod explicit o copie de rezervă înainte de fiecare actualizare, iar instrumentul său de actualizare încorporat acoperă baza de cod, dar nu face copii de rezervă ale bazei de date sau ale directorului de date . Dacă nu aveți o copie de rezervă curentă a bazei de date, creați una cu instrumentul normal de backup al platformei bazei de date înainte de a încerca modificări sau restaurări SQL manuale.

Evitați o versiune inferioară ca soluție rapidă. Nextcloud afirmă că downgrade-ul nu este acceptat și poate corupe datele. Dacă devine necesară o revenire la versiunea anterioară, modelul de recuperare acceptat este o instalare nouă a versiunii mai vechi, urmată de restaurarea unei copii de rezervă corespunzătoare, nu copierea fișierelor de program vechi peste o bază de date care a început deja migrarea. Consultați documentația instrumentului de actualizare încorporat Nextcloud .

2. Citiți excepția exactă a bazei de date din jurnalul Nextcloud

În cazul înregistrării fișierelor în jurnal, jurnalul implicit se află nextcloud.logîn directorul de date configurat. Ghidul de depanare Nextcloud recomandă verificarea acelui jurnal și, atunci când este relevant, a jurnalelor serverului web și PHP. Dacă pagina de eroare afișează un ID de solicitare, căutați acel ID pentru a izola tranzacția corespondentă.

sudo -u www-data tail -n 100 /var/www/nextcloud/data/nextcloud.log

Nu reduceți jurnalul la sintagma „Eroare bază de date”. Capturați codul SQLSTATE, clasa de excepție, tabelul sau coloana defectă și aplicația sau componenta principală numită în urmărirea stivei. De exemplu, „tabelul nu există” este o eroare foarte diferită de „prea multe conexiuni” sau „Serverul MySQL a dispărut”. Nextcloud listează câteva erori comune în stil SQLSTATE în documentația sa generală de depanare .

Fereastră de terminal care afișează o intrare în jurnalul Nextcloud cu o excepție în baza de date și detalii SQLSTATE
Folosește intrarea completă din jurnal pentru a identifica dacă eroarea este cauzată de un obiect schemă lipsă, o conexiune eșuată sau o interogare de bază de date specifică aplicației.

3. Verificați dacă actualizarea este într-adevăr finalizată

Instrumentul de actualizare încorporat înlocuiește mai întâi codul Nextcloud. Migrările bazelor de date și ale aplicațiilor reprezintă o fază separată. În modul linie de comandă, instrumentul de actualizare poate rula occ upgradeautomat; altfel, migrarea trebuie finalizată ulterior. Această distincție explică multe cazuri în care instrumentul de actualizare părea „terminat”, dar interfața grafică WebGUI normală returnează o excepție la baza de date.

cd /var/www/nextcloud
sudo -E -u www-data php occ status

Dacă trebuie să protejați instanța în timpul depanării, activați modul de întreținere. Nextcloud descrie modul de întreținere ca fiind modul destinat actualizărilor, deoarece previne noi conectări și blochează sesiunile active.

sudo -E -u www-data php occ maintenance:mode --on
sudo -E -u www-data php occ status
Terminalul afișează starea de ocupare a Nextcloud, urmată de activarea modului de întreținere
Verificați versiunea instalată și starea de întreținere înainte de a executa comenzi de reparare sau migrare, apoi țineți utilizatorii departe în timp ce recuperarea este în desfășurare.

4. Finalizați migrările suportate ale bazelor de date și aplicațiilor cu upgrade-ul occ

Dacă codul a fost actualizat, dar migrările nu s-au finalizat, executați comanda de upgrade ca utilizator HTTP:

cd /var/www/nextcloud
sudo -E -u www-data php occ upgrade

Urmăriți rezultatul până când comanda fie raportează succes, fie se oprește în urma unei anumite erori. Dacă eșuează, remediați acea cerință prealabilă înainte de a repeta comanda. Printre blocanții tipici se numără o aplicație incompatibilă, o versiune PHP/a bazei de date neacceptată, un serviciu de bază de date indisponibil sau permisiuni care împiedică lucrările de actualizare necesare. Nu reîmprospătați în mod repetat interfața grafică WebGUI în timp ce migrarea eșuează.

Documentația de actualizare Nextcloud avertizează, de asemenea, să nu se sară peste versiunile majore. Actualizați câte o versiune majoră odată atunci când treceți de la o versiune majoră la alta.

Fereastra terminalului afișează comanda de actualizare Nextcloud occ care execută pașii de actualizare a bazei de date și a aplicației
Pasul decisiv pentru recuperarea unei actualizări incomplete este de a permite Nextcloud să execute propriile migrări și să se oprească la prima eroare concretă care necesită corectare.

5. Rulați rutina de reparare Nextcloud după ce problema de migrare este corectată

maintenance:repairExecută pașii de reparare Nextcloud și se execută automat și în timpul actualizărilor. Rularea manuală este rezonabilă după ce ați corectat condiția care a întrerupt actualizarea:

sudo -E -u www-data php occ maintenance:repair

Acest lucru este mai sigur decât inventarea de instrucțiuni SQL, deoarece pașii de reparare sunt furnizați de nucleul și aplicațiile Nextcloud. Nu este un înlocuitor magic pentru occ upgradeși nu va repara un server de baze de date defect sau o versiune de bază de date neacceptată. Comanda este documentată în comenzile de sistem și de întreținere Nextcloud .

Terminal care afișează comanda de reparare pentru întreținere Nextcloud, finalizând pașii de reparare
Execută mențiunea:repair după corectarea erorii de actualizare subiacentă; aceasta execută logica de reparare furnizată de Nextcloud și aplicațiile instalate.

6. Verificați serviciul bazei de date, setările de conexiune și versiunea acceptată

Dacă jurnalul indică conectivitate și nu schemă, verificați dacă serviciul bazei de date rulează și este accesibil din mediul PHP Nextcloud. Pe o gazdă MariaDB tipică, o verificare utilă este:

sudo systemctl status mariadb

Apoi, verificați setările bazei de date în config/config.php: tipul bazei de date, gazda, numele bazei de date, utilizatorul și orice setare de socket sau port. O eroare Unix-socket poate apărea ca „Nu există un astfel de fișier sau director”, în timp ce o bază de date la distanță poate eșua din cauza rutării, DNS, TLS, regulilor de firewall, acreditărilor sau a serverului în sine.

Compatibilitatea versiunilor contează după o actualizare majoră Nextcloud. Pentru Nextcloud 35, notele oficiale de lansare menționează că MariaDB 10.6 și MySQL 8.0 nu mai sunt suportate; cerințele minime documentate sunt MariaDB 10.11 LTS și MySQL 8.4 LTS. Verificați cerințele pentru versiunea majoră exactă de Nextcloud înainte de a actualiza independent baza de date. Consultați Actualizarea la Nextcloud 35 .

Terminalul afișează starea serviciului MariaDB ca fiind activ și rulant
Când jurnalul indică o eroare de conexiune, confirmați că daemonul bazei de date rulează înainte de a modifica schema Nextcloud sau setările aplicației.

7. Inspectați abaterea de la schemă și adăugați doar structurile lipsă documentate

Nextcloud 35 adaugă db:schema:check, care compară schema live cu schema așteptată de nucleul instalat și de migrările de aplicații. Este doar pentru citire: raportează diferențele fără a modifica baza de date.

sudo -E -u www-data php occ db:schema:check
sudo -E -u www-data php occ db:schema:check -v

Dacă prezentarea generală a administratorului sau ieșirea comenzii raportează coloane, indexuri sau chei primare opționale lipsă, utilizați comenzile de întreținere documentate:

sudo -E -u www-data php occ db:add-missing-columns
sudo -E -u www-data php occ db:add-missing-indices
sudo -E -u www-data php occ db:add-missing-primary-keys

Fiecare dintre acestea este disponibilă --dry-runatunci când doriți să previzualizați comanda SQL. Aceste comenzi nu ar trebui utilizate ca înlocuitor pentru o migrare eșuată a nucleului. Dacă db:schema:checkraportează obiecte neașteptate sau diferențe între proprietățile coloanei, examinați constatarea înainte de a modifica ceva; Nextcloud notează că unele valori implicite la nivelul bazei de date sunt în afara modelului de schemă așteptată. Referința autoritară a comenzii este Nextcloud DAV și comenzile bazei de date .

Terminal care afișează comenzile de verificare a schemei bazei de date Nextcloud și adăugare a coloanelor, indexurilor și cheilor primare lipsă
Folosește mai întâi inspecția schemei, apoi aplică doar comenzile missing-schema acceptate de Nextcloud atunci când rezultatul sau prezentarea generală a administratorului indică faptul că sunt necesare.

8. Izolați erorile aplicațiilor terțe înainte de a redeschide WebGUI

Dacă urmărirea stivei denumește o aplicație nelivrată, migrarea acesteia poate fi incompatibilă cu noua versiune de server. Ghidul de depanare Nextcloud recomandă dezactivarea aplicațiilor terțe/nelivrate pentru actualizări și depanare. Folosește comenzile aplicației disponibile în versiunea instalată pentru a dezactiva aplicația suspectă specifică din linia de comandă, rulează-o din nou occ upgradeși reactivează aplicația doar după confirmarea unei versiuni compatibile.

Această ramură este deosebit de importantă atunci când tabelele de bază par sănătoase, dar excepția denumește un spațiu de nume al furnizorului sau un tabel aparținând unei aplicații. Eliminarea manuală a tabelelor acelei aplicații este riscantă, deoarece este posibil să distrugi datele pe care aplicația le așteaptă încă.

9. Ieșiți din modul de întreținere și verificați mai mult decât pagina de conectare

După occ upgradefinalizare, verificările de reparare/schemă nu mai arată o problemă de blocare, iar serviciul bazei de date este stabil, dezactivați modul de întreținere:

sudo -E -u www-data php occ maintenance:mode --off

Apoi verificați instanța pe straturi: încărcați pagina de conectare, conectați-vă, deschideți Fișiere, răsfoiți câteva foldere, testați încărcarea/descărcarea unui fișier, verificați setările de administrare pentru avertismente și examinați cele mai noi nextcloud.logintrări. De asemenea, confirmați că activitățile cron/background rulează normal. O pagină de pornire recuperată nu dovedește, în sine, că migrările aplicațiilor, operațiunile cu fișierele și activitățile din fundal sunt sănătoase.

Interfața Nextcloud Files deschisă într-un browser cu folderele Documente, Fotografii și Șabloane vizibile
După ce verificările bazei de date și ale migrării au trecut, redeschideți WebGUI și verificați navigarea normală a fișierelor și operațiunile de bază înainte de a declara actualizarea recuperată.

Listă de verificare pentru recuperare

  • Păstrați copia de rezervă anterioară actualizării și evitați o versiune inferioară neacceptată.
  • Citiți excepția completă a bazei de date din nextcloud.log, inclusiv SQLSTATE și componenta numită în urmărire.
  • Verificați occ statusși puneți instanța în modul de întreținere în timpul reparației.
  • Executați occ upgradepentru a finaliza migrările de bază și aplicații acceptate.
  • Corectează primul blocant de beton în loc să editezi orbește tabelele bazei de date.
  • Execută maintenance:repairdupă ce eroarea subiacentă este remediată.
  • Verificați starea serviciului bazei de date, setările de conexiune și compatibilitatea versiunilor.
  • Folosește db:schema:checkpe Nextcloud 35 și comenzile documentate db:add-missing-*acolo unde este cazul.
  • Dezactivați o aplicație terță care funcționează greșit dacă urmărirea indică în mod clar spre aceasta, apoi încercați din nou actualizarea.
  • Dezactivați modul de întreținere numai după ce verificările CLI sunt validă, apoi testați fișierele, transferurile, avertismentele de administrator, jurnalele și lucrările în fundal.

Când să restaurezi în loc să repari

Restaurați dintr-o copie de rezervă bună și consistentă intern atunci când baza de date în sine este deteriorată, migrările au modificat parțial datele într-un mod pe care nu îl puteți anula în siguranță sau tabelele/datele necesare au fost șterse în afara Nextcloud. Baza de date, configurația, directorul de date și versiunea de cod trebuie să aparțină unui punct de recuperare compatibil. Dacă ați plătit asistență Nextcloud sau ați efectuat o implementare critică pentru afacere, opriți-vă înainte de o intervenție chirurgicală SQL distructivă și escalați cu intrarea completă în jurnal, versiunile exacte sursă și țintă Nextcloud, tipul/versiunea bazei de date, versiunea PHP și rezultatul comenzii relevante occ.

Principiul de bază este simplu: o „Eroare în baza de date” post-actualizare nu este un motiv pentru a ghici codul SQL. Lăsați jurnalul să identifice eroarea, lăsați occ upgradesă finalizeze migrările dorite, folosiți instrumentele de reparare și schemă ale Nextcloud și validați platforma bazei de date înainte de a redeschide instanța.

Lasă un comentariu

Remedierea erorii „Database Error” din Nextcloud WebGUI după o actualizare: Ghid practic de recuperare

Remedierea erorii „Database Error” din Nextcloud WebGUI după o actualizare: Ghid practic de recuperare

Remediați o eroare a bazei de date Nextcloud WebGUI după o actualizare prin verificarea jurnalelor, finalizarea actualizării occ, repararea problemelor schemei și verificarea stării bazei de date.

Remediați în siguranță avertismentul ownCloud Apache AllowOverride All

Remediați în siguranță avertismentul ownCloud Apache AllowOverride All

Remediați avertismentul ownCloud Apache AllowOverride All prin configurarea directorului corect, testarea Apache, reîncărcarea în siguranță și verificarea protecției .htaccess.

Cum să ștergeți jurnalele de audit Zimbra pentru a elibera spațiu pe disc în siguranță

Cum să ștergeți jurnalele de audit Zimbra pentru a elibera spațiu pe disc în siguranță

Aflați cum să identificați, să arhivați, să comprimați și să eliminați jurnalele de audit Zimbra vechi, când să evitați trunchierea audit.log și cum să verificați dacă spațiul pe disc și jurnalele se recuperează corect.

Remediați pagina goală / ecranul alb al morții din ownCloud: Alegeți calea de recuperare corectă

Remediați pagina goală / ecranul alb al morții din ownCloud: Alegeți calea de recuperare corectă

Remediați o pagină goală din ownCloud separând erorile de browser, PHP, aplicație, permisiuni, upgrade și proxy, apoi alegeți calea de recuperare cu cea mai puțină perturbare.

Remediați utilizarea ridicată a procesorului în Jitsi Meet pe browserele clientului

Remediați utilizarea ridicată a procesorului în Jitsi Meet pe browserele clientului

Diagnosticați vârfurile de solicitare a procesorului browserului Jitsi Meet și reduceți încărcarea clientului verificând dalele video, efectele camerei, grafica browserului și setările gazdei.

Cum să monitorizezi metricile Jitsi Videobridge cu Prometheus și Grafana

Cum să monitorizezi metricile Jitsi Videobridge cu Prometheus și Grafana

Urmărește starea de funcționare a Jitsi Videobridge, încărcarea conferințelor și traficul cu ajutorul endpoint-ului Prometheus încorporat, apoi explorează și prezintă datele în grafic în Grafana.

Cum se configurează un nume de domeniu personalizat pentru Jitsi Meet Docker

Cum se configurează un nume de domeniu personalizat pentru Jitsi Meet Docker

Configurați un domeniu personalizat pentru Jitsi Meet Docker cu DNS, PUBLIC_URL, HTTPS, Let's Encrypt, porturi firewall, setări NAT și verificare end-to-end.

Remediați eroarea 404 a consolei de administrare Zimbra negăsită după reînnoirea SSL

Remediați eroarea 404 a consolei de administrare Zimbra negăsită după reînnoirea SSL

Remediați erorile 404 din consola de administrare Zimbra după reînnoirea SSL verificând adresa URL și portul corecte, rutarea proxy, starea serviciului, certificatele implementate și jurnalele.

Remediați avertismentul Nextcloud „OPcache-ul PHP nu este configurat corect”

Remediați avertismentul Nextcloud „OPcache-ul PHP nu este configurat corect”

Învață cum să diagnostichezi și să remediezi avertismentul de configurare PHP OPcache din Nextcloud verificând setările SAPI PHP active, limitele de dimensionare, comentariile și revalidarea.

Remediați erorile de migrare a bazei de date Kopano după o actualizare a versiunii MySQL

Remediați erorile de migrare a bazei de date Kopano după o actualizare a versiunii MySQL

Depanați erorile de migrare a bazei de date Kopano după o actualizare MySQL sau MariaDB verificând copiile de rezervă, versiunile serverului, modurile SQL, setul de caractere, starea schemei și jurnalele.