Niektorí používatelia nedokážu spustiť MySQL v XAMPP. Podľa nich zakaždým, keď spustia MySQL v XAMPP, dostanú chybovú správu, ktorá hovorí „Error: MySQL shutdown unexpectedly.“ Najčastejšou príčinou tohto problému sú poškodené databázové súbory XAMPP. Ak máte takýto problém s MySQL, návrhy uvedené v tomto príspevku vám môžu pomôcť problém vyriešiť.
Prečo sa MySQL neočakávane vypne?
Pred ukončením XAMPP je potrebné zastaviť MySQL. Ak ukončíte XAMPP bez zastavenia MySQL, môže dôjsť k poškodeniu dátových súborov MySQL. Z tohto dôvodu môžete zaznamenať niekoľko problémov s MySQL, napríklad neočakávané vypnutie MySQL. Ak máte takýto problém, je možné, že dátové súbory MySQL vo vašom systéme sú poškodené. Opísali sme niektoré metódy riešenia problémov, ktoré vám môžu pomôcť zbaviť sa tohto problému.
Chyba: Neočakávané vypnutie MySQL
Skúste problém vyriešiť pomocou nasledujúcich riešení. Skôr ako budete pokračovať, odporúčame vám create a backup of the XAMPP folder. Na tento účel skopírujte priečinok XAMPP a vložte ho do iného oddielu pevného disku alebo externého pevného disku.
- Spustite XAMPP ako správca
- Opravte databázu MySQL
- Upravte súbor my.ini
- Odstráňte všetky súbory v priečinku Údaje
- Premenujte súbor aria_log_control
- Zastavte všetky služby SQL a znova ich spustite
- Skopírujte súbory z priečinka Záloha do priečinka Údaje
- Odstráňte súbor(y) INFO z priečinka Data
- Premenujte priečinok Údaje a skopírujte súbor ibdata1 do priečinka Údaje
- Odinštalujte a znova nainštalujte Xampp
Pozrime sa na všetky tieto riešenia podrobne. Pred vyskúšaním každej metódy napísanej nižšie sa uistite, že ste XAMPP správne zatvorili.
1]Spustite XAMPP ako správca
Odporúča sa vždy spúšťať XAMPP ako správca, aby ste predišli poškodeniu dátového súboru. Spustite XAMPP ako správca a zistite, či problém vyriešil. Ak to pomôže, ušetríte čas na iné metódy riešenia problémov. Ak chcete spustiť XAMPP ako správca, postupujte podľa nasledujúcich krokov:
- Kliknite na Windows Search a zadajte XAMPP.
- Kliknite pravým tlačidlom myši na XAMPP a vyberte Run as Administrator.
- Kliknite Yes ak dostanete výzvu UAC.
Môžete tiež nastaviť XAMPP tak, aby sa vždy spúšťal ako správca.
2]Opravte databázu MySQL
Ako je uvedené vyššie v tomto článku, hlavnou príčinou tohto problému je poškodenie dátových súborov XAMPP. Ak sa problém vyskytuje vo vašom počítači v dôsledku tohto problému, opravou databázy MySQL môžete problém vyriešiť. Kroky na opravu databázy MySQL sú uvedené nižšie:
Kliknite na Windows Search a zadajte PowerShell. Vyberte Windows PowerShell z výsledkov vyhľadávania.
Napíšte nasledujúci príkaz a stlačte Enter.
mysqld --console --skip-grant-tables --skip-external-locking
Vyššie uvedený príkaz spustí MySQL server bez načítania grantových tabuliek. Keď je vyššie uvedený príkaz úspešne vykonaný, zadajte nasledujúci príkaz a stlačte Enter.
mysqlcheck -r --databases mysql --use-frm
Vyššie uvedený príkaz opraví databázu MySQL. Po úspešnom vykonaní vyššie uvedených príkazov skontrolujte, či problém pretrváva.
3]Upravte súbor my.ini
Zmena portu úpravou súboru my.ini vyriešila problém pre niektorých používateľov. Môžete to skúsiť aj vy. Otvorte súbor my.ini a zmeňte port 3306 na niečo iné. V predvolenom nastavení sa súbor my.ini nachádza na nasledujúcom umiestnení:
C:xamppmysqlbin
- Otvor File Explorer.
- Skopírujte vyššie uvedenú cestu a vložte ju do panela s adresou Prieskumníka. Po tomto zásahu Enter.
- Teraz prejdite nadol a nájdite súbor my.ini.
- Keď ho nájdete, kliknite naň pravým tlačidlom myši a vyberte „Open with > Notepad.“
Ak nenájdete súbor my.ini na vyššie uvedenom mieste, môžete postupovať podľa pokynov uvedených nižšie.
- Kliknite na Windows Search a zadajte XAMPP.
- Kliknite pravým tlačidlom myši na XAMPP vo výsledkoch vyhľadávania a vyberte Run as Administrator.
- Kliknite Yes vo výzve UAC. Tým sa otvorí ovládací panel XAMPP.
- Klikni na Config vedľa MySQL a vyberte my.ini. Tým sa otvorí súbor my.ini vo vašom predvolenom textovom editore.
Po otvorení súboru my.ini v programe Poznámkový blok stlačte kláves Ctrl + Fs a typ 3306. Nahraďte ktorýkoľvek z portov 3306 iným číslom portu. Môžete zadať ľubovoľné náhodné číslo portu, napríklad 3307, 3308 atď. Pre niektorých používateľov nahradenie portu 3306 2811 problém vyriešil.
Uložte súbor my.ini a zatvorte Poznámkový blok. Reštartujte počítač a potom spustite XAMPP. Skontrolujte, či je problém vyriešený. Ak to nefunguje, vráťte zmeny, ktoré ste vykonali v súbore my.ini, a skúste ďalšie riešenie.
4]Odstráňte všetky súbory v priečinku Data
Ak vyššie uvedené riešenie váš problém nevyriešilo, vráťte zmeny v súbore my.ini, ktoré ste práve vykonali. Teraz otvorte Prieskumník súborov a prejdite na nasledujúcu cestu:
C:xamppmysqldata
Vyššie uvedená cesta otvorí priamo priečinok Údaje. Teraz odstráňte všetky súbory okrem priečinkov. Po odstránení súborov v priečinku Údaje prejdite v Prieskumníkovi súborov na nasledujúcu cestu:
C:xamppmysqlbin
Nájdite súbor my.ini a otvorte ho pomocou programu Poznámkový blok. Teraz zadajte port=8111 tesne pod port=3306 (ako je znázornené na obrázku vyššie). Stlačte tlačidlo Ctrl + Ss uložíte zmeny, ktoré ste vykonali v súbore my.ini, a zatvorte Poznámkový blok. Teraz spustite XAMPP ako správca a spustite MySQL. Tentoraz by problém nastať nemal.
5]Premenujte súbor aria_log_control
Ak vyššie uvedené riešenie váš problém nevyriešilo, otvorte priečinok XAMPP, ktorý ste skopírovali na externý pevný disk alebo na iný oddiel pevného disku, a skopírujte doň všetok obsah. Teraz otvorte XAMPP na jednotke C a vložte tam skopírovaný obsah. Ak budete vyzvaní, vymeňte súbory a priečinky. Teraz prejdite na nasledujúcu cestu:
C:xamppmysqldata
Premenovať aria_log_control do aria_log_control_old a spustite XAMPP. Spustite MySQL a zistite, či to prinesie nejaké zmeny. Ak to nepomôže, vráťte zmeny a skúste ďalšie riešenie.
Read: Najlepšie bezplatné alternatívy Xampp Server pre vývojárov.
6]Zastavte všetky služby SQL a znova ich spustite
Reštartovanie služieb SQL vyriešilo problém niektorých používateľov. Táto metóda môže fungovať aj pre vás. Otvorte aplikáciu Služby a zastavte všetky služby SQL a znova ich spustite. Kroky, ako to urobiť, sú napísané nižšie:
- Stlačte tlačidlo Win + Rs. Tým sa spustí Run.
- Typ services.msc a kliknite na tlačidlo OK. Zobrazí sa okno Správa služieb.
- V aplikácii Služby sa posuňte nadol a nájdite SQLs. Na svojom počítači môžete nájsť viac ako jednu službu SQL.
- Zastavte všetky služby SQL. Kliknite pravým tlačidlom myši na službu SQL a vyberte Stop.
- Teraz znova kliknite pravým tlačidlom myši na služby SQL a vyberte Start.
Po reštartovaní služieb SQL zatvorte aplikáciu Služby a spustite XAMPP ako správca. Spustite MySQL a zistite, či sa chyba opakuje.
7]Skopírujte súbory z priečinka Záloha do priečinka Údaje
Ďalším účinným riešením na vyriešenie tohto problému je skopírovanie všetkých údajov vo vnútri Backup a vložte ho do Data. Ak to chcete urobiť, najprv skopírujte nižšie uvedenú cestu a vložte ju do panela s adresou v Prieskumníkovi súborov. Po tomto stlačení Enter.
C:xamppmysqlbackup
Tým sa otvorí priečinok Zálohovanie XAMPP vo vašom adresári C. Teraz odtiaľ skopírujte všetky údaje a prejdite na nasledujúcu cestu:
C:xamppmysqldata
Vložte tam skopírované údaje. Ak sa zobrazí výzva na nahradenie súborov, vyberte Yes. Spustite XAMPP ako správca a skontrolujte, či môžete tentoraz spustiť MySQL. Ak nie, skúste ďalšie riešenie.
8]Odstráňte súbor(y) INFO z priečinka Data
Ak problém stále pretrváva, odstráňte súbor INFO file a skontrolujte, či to pomáha. Súbor(y) INFO sa nachádza/sú umiestnené na nasledujúcom mieste na disku C.
C:xamppmysqldata
Či už je na vyššie uvedenom mieste jeden alebo viac súborov INFO, musíte ich všetky vymazať. Po odstránení INFO súboru (súborov) spustite XAMPP a spustite MySQL. MySQL by sa malo spustiť bez akejkoľvek chyby.
Ak to nepomôže, skopírujte všetky súbory z priečinka XAMPP, ktorý ste vytvorili ako zálohu na externom pevnom disku alebo na inom oddiele pevného disku a prilepte skopírované súbory do priečinka XAMPP na disku C. Ak sa zobrazí výzva, vymeňte súbory a priečinky.
9]Premenujte priečinok Údaje a skopírujte súbor ibdata1 do priečinka Údaje
Toto riešenie pomohlo mnohým používateľom. Ak vyššie uvedené riešenia váš problém nevyriešili, táto metóda by vám mala vyhovovať. Premenujte priečinok Údaje a skopírujte súbor ibdata1 do priečinka Údaje. Postup, ako to urobiť, je vysvetlený nižšie.
- Otvor XAMPP nachádza na vašom disku C.
- Teraz otvorte mysql.
- Premenujte data do data_old.
- Skopírujte backup na inom oddiele pevného disku alebo na externom pevnom disku. Teraz premenujte backup nachádza v priečinku mysql na disku C data.
- Otvor data_old a skopírujte všetky databázové priečinky v ňom a ibdata1. Nekopírujte mysql, performance_schemaa phpmyadmins. Teraz otvorte data (čo bol v skutočnosti záložný priečinok skôr) a vložte tam skopírované údaje. Nahraďte súbory, ak ste o to požiadaní.
- Spustite ovládací panel XAMPP a spustite mysql.
10]Odinštalujte a znova nainštalujte XAMPP
Ak všetky vyššie uvedené riešenia nevyriešili váš problém, odinštalujte a znova nainštalujte XAMPP. XAMPP môžete odinštalovať z ovládacieho panela alebo z nastavení systému Windows 11/10. Po odinštalovaní Xampp si stiahnite jeho najnovšiu verziu z oficiálnej webovej stránky Apache a znova ju nainštalujte.
Read: Ako zvýšiť veľkosť nahrávania phpMyAdmin na XAMPP.
Čo robiť, ak sa MySQL neotvára v XAMPP?
Ak XAMPP nainštalujete na iné miesto namiesto predvoleného umiestnenia, môžu sa vyskytnúť problémy. Predvolené umiestnenie na inštaláciu XAMPP je c:xampp. Preto, ak ste nainštalovali XAMPP na inom mieste, odinštalujte ho a nainštalujte na jeho predvolené umiestnenie. Ak ste nainštalovali XAMPP na predvolené umiestnenie, ale MySQL sa stále neotvára ani nebeží v XAMPP, otvorte aplikáciu Služby v systéme Windows 11/10 a zastavte všetky služby SQL a znova ich spustite.
Ďalším efektívnym riešením na vyriešenie tohto problému je zmena portu 3306 na 3308. Ak to chcete urobiť, musíte upraviť súbor my.ini, ktorý sa nachádza na nasledujúcom mieste:
C:xamppmysqlbin
Dúfam, že to pomôže.
Read next: Apache sa nespúšťa z ovládacieho panela XAMPP v systéme Windows 11/10.
Bệnh Viện Công Nghệ chúc anh em thành công!!!