Teie sait näitab üksainsat rida: «Andmebaasiga ei saadud ühendust» (ingliskeelses WordPressis «Error establishing a database connection»). WordPress ei saanud avada andmebaasi, kus asuvad teie lehed, sätted ja kontod. Teie sisu on tavaliselt puutumata: see juhend näitab, kuidas leida, milline neljast võimalikust põhjusest on mängus, ja kuidas seda parandada.
wp-config.php andmetega andmebaasiserveriga ühendust. Teie sisu on tavaliselt puutumata.wp-config.php nelja väärtust DB_NAME, DB_USER, DB_PASSWORD ja DB_HOST oma majutuse juhtpaneeli väärtustega.Iga serveeritava lehe jaoks avab WordPress ühenduse oma MySQL- või MariaDB-andmebaasiga, kasutades nelja väärtust, mis on kirjas saidi juurkausta failis wp-config.php:
define( 'DB_NAME', 'andmebaasi_nimi' );
define( 'DB_USER', 'kasutajanimi' );
define( 'DB_PASSWORD', 'parool' );
define( 'DB_HOST', 'localhost' );
«Andmebaasiga ei saadud ühendust» tähendab, et see ühendus ebaõnnestus. Sellel on neli võimalikku põhjust: andmed, mis enam ei klapi, andmebaasiserver, mis on maas või kättesaamatu, ülekoormatud server või kahjustatud andmebaas. Allpool on need järjestatud kõige lihtsamini kontrollitavast kõige harvemini esinevani.
Kui süüdi on server, avage majutaja juures pöördumine, märkides rikke alguse aja ja täpse teate. Seni ei ole saidil vaja midagi muuta.
See on kõige sagedasem põhjus pärast saidi kolimist, andmebaasi parooli muutmist majutuse juhtpaneelis või varukoopia taastamist. Võrrelge faili wp-config.php nelja väärtust oma majutuse juhtpaneeli andmebaaside jaotisega:
DB_NAME ja DB_USER: paljud majutajad lisavad neile konto nime eesliite (konto_wordpress). Eesliide on nime osa.DB_PASSWORD: kahtluse korral määrake juhtpaneelis kasutajale uus parool ja kopeerige see faili.DB_HOST: paljude majutajate juures localhost, kuid mitte kõigi. Mõni annab serveri nime või aadressi, mõnikord koos pordiga (:3306). Täpne väärtus on juhtpaneelis.Parool, mis sisaldab ülakoma ('), katkestab failis wp-config.php seda ümbritseva PHP stringi. Pange selle ette kaldkriips (\') või valige ülakomata parool.
WordPress näitab üldist teadet. MySQL seevastu ütleb täpselt, mis on valesti. Kaks viisi temalt küsida, faili wp-config.php väärtustega:
mysql -h localhost -u kasutajanimi -p andmebaasi_nimi
WP-CLI-ga loeb wp db check otse faili wp-config.php ja kontrollib nende andmetega tabeleid.
Laadige see fail raskesti äraarvatava nimega saidi juurkausta, avage see brauseris ja kustutage see kohe: see sisaldab andmebaasi parooli.
<?php
mysqli_report(MYSQLI_REPORT_OFF);
$uhendus = @mysqli_connect('localhost', 'kasutajanimi', 'parool', 'andmebaasi_nimi');
echo $uhendus ? 'Ühendus OK' : 'Ebaõnnestus: ' . mysqli_connect_error();
Esimene rida on oluline: alates PHP 8.1-st viskab ebaõnnestunud ühendus vaikimisi erindi ja leht jääks tühjaks, selle asemel et näidata MySQL-i teadet.
| MySQL vastab | Põhjus | Parandus |
|---|---|---|
Access denied for user 'kasutajanimi'@'localhost' (using password: YES) | Kasutajanime ja parooli paar lükatakse tagasi või kasutaja ei tohi sellest hostist ühendust luua. | Lähtestage parool juhtpaneelis ja kopeerige see väärtuseks DB_PASSWORD; kontrollige DB_USER. |
Access denied for user 'kasutajanimi'@'localhost' to database 'andmebaasi_nimi' | Kasutaja saab ühenduse luua, kuid tal pole sellele andmebaasile õigusi. | Siduge kasutaja oma majutuse juhtpaneelis andmebaasiga, kõigi õigustega. |
Unknown database 'andmebaasi_nimi' | Ühendus töötab, kuid sellise nimega andmebaasi pole. | Parandage DB_NAME, koos eesliitega; kontrollige, kas andmebaas on veel olemas. |
Too many connections | Server on jõudnud samaaegsete ühenduste ülemmäärani. | Vaadake jaotist vahelduvate vigade kohta. |
Connection refused või No such file or directory (PHP kood 2002), Can't connect to MySQL server (käsurida) | Sellel aadressil ei vasta ükski server: server on maas või DB_HOST on vale. | Kontrollige DB_HOST väärtust juhtpaneelis; muul juhul võtke ühendust majutajaga. |
Ühendus OK | Andmed on õiged. | Uurige andmebaasi ennast: järgmine jaotis. |
Kui andmed on õiged, kuid tabelid on kahjustatud, näitab avalik sait sama ühendusviga ja töölaud täpsemat: «Üks või mitu andmebaasitabelit on kättesaamatud. Andmebaasi võib olla vaja parandada.» WordPressil on selleks tööriist. Lisage see rida faili wp-config.php:
define( 'WP_ALLOW_REPAIR', true );
Seejärel avage https://www.teie-sait.com/wp-admin/maint/repair.php ja käivitage «Paranda andmebaasi». Eemaldage rida kohe, kui parandus on tehtud: seni, kuni see on olemas, pääseb sellele lehele igaüks, sisse logimata.
Enne mis tahes parandust eksportige andmebaas (wp db export või phpMyAdmini ekspordi vahekaart). Kui parandus ebaõnnestub, saab teie majutaja andmebaasi oma varukoopiatest taastada.
Viga, mis ilmub teatud aegadel ja kaob iseenesest, viitab pigem ülekoormatud serverile kui valele sättele. Tavalised põhjused:
wp-login.php või xmlrpc.php, mis on näha teie majutaja juurdepääsulogides.Parandused: blokeerige kuritarvituslikud sisselogimiskatsed, lisage lehtede vahemälu, lülitage xmlrpc.php välja, kui ükski rakendus seda ei kasuta, ja küsige majutajalt vea aega hõlmavaid logisid.
Serenity by Simafriga loome teie professionaalse veebilehe, majutame seda, turvame ja hoiame ajakohasena. Teie kirjutate meile, meie hoolitseme kõige eest. Domeeninimi ja tööpost sees.
Tavaliselt mitte. Teade ütleb, et WordPress ei saanud andmebaasiga ühendust, mitte et andmebaas on kadunud. Kui phpMyAdmin näitab endiselt saidi tabeleid, on teie lehed, postitused ja sätted alles.
Sest uus majutus kasutab teisi andmebaasi andmeid: andmebaasi nimi, kasutaja, parool ja mõnikord serveri aadress. Kopeerige uue juhtpaneeli väärtused faili wp-config.php konstantidesse DB_NAME, DB_USER, DB_PASSWORD ja DB_HOST.
WordPressi uuesti paigaldamine ei muuda faili wp-config.php andmeid ega andmebaasiserveri olekut, mis just selle teate põhjustavad. Testige kõigepealt andmeid, seejärel serverit, seejärel tabelite terviklikkust.
Pigem ülekoormusest kui sättest: liiga palju samaaegseid ühendusi, liikluse tipp või robotid. Juurdepääsulogid ja ressursikasutuse näitajad teie majutuse juhtpaneelis näitavad, mis vea ajal toimus.
Simafri
Räägime teie kavatsusest
Öelge meile paari sõnaga, mida vajate: vastame teile kiiresti.
Aitäh! Teie päring on saadetud. Võtame teiega peagi ühendust.
Eelistate e-posti? Kirjutage meile aadressil support@simafri.com.