Ștergeți în siguranță avertismentul ownCloud Apache .htaccess
Setați AllowOverride All doar pentru rădăcina web a ownCloud, validați vhost-ul Apache activ și reîncărcați în siguranță pentru a restaura regulile .htaccess.
Pentru ownCloud 10, începeți prin a aplica modificările de schemă livrate de nucleul și aplicațiile instalate, apoi verificați care interogări ale bazei de date sunt de fapt lente. Nu adăugați indexuri orbește și nu presupuneți că comanda Nextcloud db:add-missing-indiceseste o comandă de reparare ownCloud 10 acceptată: referința OCC actuală pentru ownCloud Server 10.15 nu o documentează. Indexurile pot face citirile corespondente mai rapide, dar fiecare index adăugat consumă spațiu de stocare și adaugă muncă la inserări, actualizări și ștergeri.
Această abordare este potrivită pentru un administrator care are o pagină ownCloud, o listă de fișiere sau o operațiune în aplicație lentă și poate accesa serverul și baza de date. Dacă întreaga instanță este lentă sau rulează pe SQLite cu mai mulți utilizatori activi, verificați configurația mai amplă a bazei de date și a implementării înainte de a trata indexurile drept cauză.
Un index al bazei de date este o structură auxiliară care ajută baza de date să localizeze rânduri fără a scana un întreg tabel. ownCloud și aplicațiile sale definesc tabele, coloane și indexuri ca parte a schemei lor. Actualizările nucleului și ale aplicațiilor pot include migrări de schemă care creează sau ajustează acești indexuri. Prin urmare, menținerea schemei aplicației la zi este cel mai sigur prim pas.
Folosește următoarele distincții înainte de a schimba ceva:
Un index nu este un comutator general de viteză. Mai mulți indexuri pot îmbunătăți căutările selectate, crescând în același timp dimensiunea bazei de date și latența la scriere. Rezultatul depinde de forma interogării, dimensiunea tabelului, distribuția datelor, motorul bazei de date și starea memoriei cache.
sudo -u www-data ./occ status. Notați versiunea ownCloud, versiunile aplicației instalate, tipul bazei de date și prefixul tabelului de la config/config.php. Înlocuiți comanda www-datacu contul de server web din distribuția dvs.mysqldump --single-transactionca exemplu bazele de date compatibile cu MySQL; adaptați valorile gazdă, utilizator și bază de date la configurația dvs. Nu puneți o parolă a bazei de date direct în istoricul shell-ului sau într-o listă de procese.Dacă este în așteptare o actualizare a nucleului sau a aplicației ownCloud, utilizați procesul de actualizare documentat pentru metoda dvs. de instalare. Într-o instalare Linux convențională, comanda OCC este executată ca utilizator HTTP din directorul rădăcină ownCloud. Când urmați instrucțiunile de actualizare manuală, comanda este:
sudo -u www-data ./occ upgrade
Nu îl rulați împotriva unei instalări ale cărei fișiere au fost actualizate doar parțial. Mai întâi, pregătiți fișierele de lansare corespunzătoare și urmați pașii oficiali de actualizare pentru acea versiune. Pentru implementările Docker, utilizați invocarea OCC documentată a containerului, mai degrabă decât o cale gazdă care indică un mediu PHP diferit.
Citiți ieșirea completă a comenzii și jurnalele. O comandă executată cu succes ar trebui să se finalizeze fără a se raporta o migrare eșuată; aceasta nu garantează că fiecare interogare lentă este remediată. Dacă actualizarea raportează o eroare de migrare, opriți-o și investigați eroarea respectivă în loc să rulați comanda în mod repetat sau să editați manual tabelele de schemă. Consultați documentația de actualizare specifică versiunii ownCloud și administratorul aplicației atunci când este implicată o migrare a aplicației.
Referința ownCloud 10.15 OCC listează comenzile bazei de date, cum ar fi db:convert-type, db:convert-mysql-charset, și db:restore-default-row-format, dar nu listează db:add-missing-indices. Deoarece disponibilitatea comenzilor poate varia în funcție de versiune și de codul instalat, puteți inspecta propria instanță cu sudo -u www-data ./occ list dbsau sudo -u www-data ./occ help db:add-missing-indices. Dacă aceasta din urmă raportează o comandă necunoscută, nu copiați comanda unui tutorial Nextcloud în ownCloud. Verificați documentația pentru versiunea exactă de ownCloud și utilizați calea de actualizare sau migrare a aplicației acceptată.
SQL-ul manual este o opțiune pentru administratorul bazei de date pentru o problemă de interogare verificată, nu o optimizare ownCloud de rutină. Mai întâi capturați exact interogarea lentă și rulați instrumentul de inspecție a planului motorului, cum ar fi EXPLAINpentru MySQL/MariaDB sau PostgreSQL. Confirmați dacă planul scanează un număr inutil de mare de rânduri și dacă un index existent este ignorat. Prefixul tabelului ownCloud este configurabil, așa că nu presupuneți niciodată că numele tabelelor încep cu oc_.
Înainte de a construi un index, comparați coloanele propuse cu filtrele, joncțiunile și ordinea de sortare ale interogării. Ordinea coloanelor unui index compozit este importantă; duplicarea unui index existent poate adăuga costuri fără a îmbunătăți planul. Solicitați unui administrator de baze de date să ia în considerare comportamentul versiunii bazei de date, suportul pentru construirea indexului online sau concurent, spațiul de stocare pe disc, impactul blocărilor și procedura de revenire la normal. Aceste detalii sunt specifice motorului și versiunii, deci nu există o singură instrucțiune SQL sigură pentru fiecare instalare ownCloud 10.
Nu modificați tabelele ownCloud și nu eliminați indexuri doar pentru că un nume pare redundant. Astfel de modificări pot intra în conflict cu o migrare ulterioară a nucleului sau a aplicației și pot defecta o funcție care utilizează o interogare diferită de cea inspectată. Păstrați o înregistrare scrisă a oricărei modificări manuale ale schemei și asigurați-vă că aceasta poate fi recreată după restaurare sau migrare. Preferați un patch sau o versiune de aplicație ownCloud acceptată atunci când indexul lipsă este un defect al schemei produsului.
Dacă planul folosește deja un index adecvat, adăugarea unui altul este puțin probabil să remedieze o întârziere cauzată în altă parte. Comparați aceste opțiuni cu blocajul observat:
Schimbarea motoarelor de baze de date este un proiect de migrare, nu o modificare rapidă a indexului. ownCloud oferă occ db:convert-typeconversii acceptate; verificați cerințele preliminare, faceți mai întâi o copie de rezervă și testați instanța convertită înainte de a direcționa utilizatorii către ea.
Repetați aceeași acțiune a utilizatorului în condiții comparabile și comparați durata interogării, planul de execuție, rândurile examinate, I/O-urile din baza de date și încărcarea serverului. Confirmați că pagina sau aplicația ownCloud relevantă se finalizează normal și că jurnalele nu arată erori de bază de date sau de migrare. Un rezultat mai rapid la o singură solicitare nu dovedește o îmbunătățire generală; comparați mai multe solicitări reprezentative și luați în considerare memoriile cache la cald.
Dacă aceeași interogare rămâne lentă în timp ce utilizează un index adecvat, investigați blocările, spațiul de stocare, latența rețelei, workerii PHP și limitele resurselor bazei de date. Dacă planul de interogare sau structura tabelului este neclare, opriți-vă înainte de a emite DDL manual și solicitați unui administrator de baze de date sau unei persoane de contact pentru asistență ownCloud să o revizuiască. Rezultatul fiabil este o schemă aliniată cu versiunea ownCloud instalată și interogările măsurate, fără modificări ale indexului neurmărite.
Setați AllowOverride All doar pentru rădăcina web a ownCloud, validați vhost-ul Apache activ și reîncărcați în siguranță pentru a restaura regulile .htaccess.
Activați aplicația Enterprise Auditing a ownCloud, direcționați evenimentele admin_audit către un fișier jurnal protejat și confirmați că acțiunile reale ale utilizatorilor sunt înregistrate.
Aliniați emitentul realm-ului Keycloak, clientul web și revendicările utilizatorului pentru a permite ownCloud Infinite Scale să conecteze utilizatorii în mod fiabil pe clienții web și mobili.
Transferă fișierele deținute și partajările de ieșire cu comanda occ din ownCloud, înțelege ce rămâne în urmă și verifică accesul înainte de a șterge contul vechi.
Află când necesită atenție indexurile bazei de date ownCloud 10, cum să aplici în siguranță actualizările schemei acceptate și când optimizarea interogărilor sau o modificare a bazei de date reprezintă cea mai bună soluție.
Conectați o partajare de rețea Windows sau Samba la ownCloud prin intermediul spațiului de stocare extern, verificați acreditările și depanați în siguranță folderele inaccesibile.
Eliminați fiecare versiune de fișier ownCloud Server Classic stocată pentru un cont sau pentru toți utilizatorii și faceți diferența între o eliminare completă și o expirare bazată pe retenție.
Urmăriți un refuz al conexiunii mobile ownCloud verificând adresa URL a serverului, rețeaua telefonică, endpoint-ul HTTPS și jurnalele serverului în ordinea corectă.
Înlocuiți rularea joburilor la cerere cu un cronometru systemd care rulează comanda occ system:cron acceptată de ownCloud la fiecare 15 minute.
Urmăriți cererea WebDAV prin Apache, Nginx sau un proxy invers, apoi confirmați că sincronizarea ownCloud funcționează cu un test PROPFIND autentificat.