Cum pot adăuga indexuri în baza de date WordPress?
Am primit un mesaj de la Hostgator despre suspendarea contului meu din cauza încărcării pe serverele lor. Aceasta este a cincea oară când se întâmplă acest lucru. Sunt pe un server partajat.
Și au spus că problema ar putea fi rezolvată prin simpla adăugare de noi indexuri în baza de date sau prin optimizarea bazei de date folosind alte tehnici. Am folosit interogări SQL și opțiunea "optimize" în phpMyAdmin pentru a optimiza baza mea de date, dar asta nu a ajutat.
De asemenea, am instalat Super Cache așa cum au recomandat, dar nici acest lucru nu a ajutat.
Acum, vreau să încerc să adaug indexuri în baza de date. Cum pot face acest lucru? Știe cineva cum să fac asta, vă rog? Este urgent.
Mulțumesc.

Baza de date WordPress este deja indexată. Consultați acest articol din codex pentru o listă detaliată a indexurilor pe tabel: http://codex.wordpress.org/Database_Description
Și chiar dacă nu ar fi fost, ar fi trebuit să știți ce interogări sunt executate pentru a adăuga eficient indexuri. Adică, nu ar exista o soluție rapidă - ar trebui să învățați cum funcționează indexarea, să identificați ce interogări au performanțe slabe și să continuați de acolo.
Dacă într-adevăr aveți probleme cu interogări lente, cel mai probabil acestea sunt cauzate de un plugin sau o temă prost scrisă pe care o utilizați. Încercați să dezactivați toate pluginurile și să treceți la tema implicită, pentru a vedea cum afectează performanța. Dacă site-ul dvs. este încă prea solicitant pentru gazda shared (cu tema implicită și fără pluginuri active), trebuie să vă mutați la alt furnizor de hosting.

Cred că știe că deja este indexat, dar nu este indexat suficient de bine. Să zicem că meta_value nu este indexat și aproape toate site-urile cu căutare personalizată folosesc căutarea în acele câmpuri care nu sunt indexate, așa că este lent. Așadar, dacă încerci să spui că WP a făcut o treabă bună la acest capitol - nu sunt de acord. Desigur, nu putem vedea în ce câmpuri caută acest tip, lucru care ne-ar fi de ajutor.

Din sunetul întrebării sale, nu cred că știe asta. Sună de parcă speră că există vreo comandă "adaugă indecși" pe care o poți rula pentru a îmbunătăți performanța, iar eu încerc să explic că este mai complicat de atât. Trebuie să își înțeleagă interogările înainte de a decide dacă le poate îmbunătăți performanța sau nu cu indecși suplimentari. Nu pare să fie în poziția de a face asta, deoarece el întreba literalmente cum să adauge indecși, nu CARE indecși să adauge sau de ce. Oricum, da, WordPress este indexat perfect bine pentru o instalare folosind tema implicită fără plugin-uri.

Salut băieți, Mulțumesc pentru răspunsuri. Știam că WordPress este deja indexat pentru că gazda mea a spus, "Rezolvarea acestei situații poate fi la fel de simplă precum adăugarea de indecși suplimentari la baza ta de date, optimizarea interogărilor folosite, sau ceva la fel de ușor." "Indecși suplimentari" a fost expresia pe care au folosit-o. Oricum, de fapt este post-new.php (pentru articole) care a cauzat problema de încărcare mare. Oricând dau click pe "Adaugă nou", se încarcă la nesfârșit (cu un ecran alb, gol) și apoi trebuie să închid tab-ul și să încerc din nou până când se deschide pagina. Cum pot rezolva asta cu mai mulți indecși? Mulțumesc.

Site-ul are puțin peste 8.000 de articole și primește aproximativ 2000 de vizitatori pe zi, care vizualizează pagina de aproximativ 5.000-8.000 de ori zilnic. Dimensiunea bazei de date este de aproximativ 66 MB. Doar împărtășesc aceste informații în caz că au vreo relevanță.

@KwameBoame Nu știi dacă POȚI rezolva cu mai mulți indecși. Indexarea nu este soluția pentru toate problemele legate de MySQL, iar dacă nu știi care este exact problema ta, nu știi dacă indecșii suplimentari o vor rezolva. S-ar putea să nu aibă nicio legătură cu MySQL deloc - ar putea fi o buclă defectuoasă într-un plugin care face ca o interogare perfect bună să ruleze de prea multe ori. Cine știe. Dacă gazda ta este sigură că este o problemă cu una dintre interogările tale, cere-le să activeze "jurnalizarea interogărilor lente" și să-ți ofere jurnalul. Între timp, aș sugera din nou să dezactivezi toate plugin-urile pentru a vedea dacă asta rezolvă problema.

@MathSmath mulțumesc pentru sugestie. A funcționat. Plugin-ul Super Cache a fost cel vinovat. A făcut ca post-new.php să facă câteva sute de interogări până când a expirat timpul. Acum, trebuie să caut un plugin de caching mai bun. Mulțumesc pentru ajutor, prietene.

Cred că ți-au oferit o soluție foarte generală la o problemă mai specifică. WordPress folosește multiple tabele pentru a interoga articole/pagini/etc. Nu sunt sigur dacă chiar ar trebui să adaugi noi indecși. Aș începe prin a pune site-ul în modul de întreținere și a testa pagina cu pagină. Trebuie să descoperi care pagină/pagini rulează interogări foarte mari și să le oprești, să le paginezi sau să le schimbi. Cealaltă posibilitate este că ai construit de fapt un site de succes, și nicio optimizare din lume nu îți va oferi mai multă lățime de bandă. Poate fi nevoie să aloci mai mulți bani și să obții un server dedicat. Dacă acest lucru nu este posibil, din nou, trebuie să minimizezi numărul de interogări la baza de date pe care le faci.

Am înțeles și sunt parțial de acord. Ar trebui să poată rula site-ul său fără a provoca o suprasolicitare a serverului; dar din nou, ai putea literalmente avea prea mulți vizitatori pe site (ceea ce este un lucru bun) și să fie nevoie să faci upgrade la pachetul economic. Indexarea WordPress este suficient de bună pentru a rula un site destul de mare fără probleme; dar din nou, asta depinde de plugin-urile care fac query-uri și de temă. De asemenea, dacă ai 100 de plugin-uri instalate și activate, asta nu va ajuta. Calea ușoară: faceți upgrade de la hosting-ul economic. Calea grea: dezactivați plugin-urile și optimizați query-urile.

Vă recomand să folosiți pluginul http://wordpress.org/extend/plugins/wp-super-cache/ dacă site-ul vostru nu este foarte dinamic. Și se schimbă o dată pe zi, să zicem. Acest plugin creează fișiere statice din conținut dinamic, astfel încât aproape elimină interogările la baza de date. (puteți alege ce nu ar trebui să fie cache-uit). Face site-ul extrem de rapid. [DAR faceți o copie de rezervă înainte de instalare]
Aici am făcut o poză cum să faceți un câmp indexat http://s10.postimage.org/wxjn9u2uh/index.jpg DAR - NU TOATE CÂMPURILE pot și trebuie să fie indexate. Câmpul indexat trebuie să aibă o dimensiune specifică. Și indexarea trebuie făcută pe câmpuri pe care le interogați frecvent.
