cari

Rumah  >  Soal Jawab  >  teks badan

Bagaimana untuk memulihkan mysql ke tetapan kilang?

Jadi saya memadamkan semua pengguna dalam mysql.user dan memulakan semula pangkalan data mysql. Sekarang saya nampaknya tidak boleh masuk ke mysql sekali lagi atau bagaimana untuk menetapkan semula ia seolah-olah ia adalah pemasangan baru. Saya cuba memasang semula menggunakan brew uninstall mariadb 卸载它,然后使用 brew install mariadb tetapi itu tidak menyelesaikan masalah. Satu-satunya sumber yang boleh saya temui adalah tentang cara memulihkan pengguna dari dalam mysql (yang saya sedang bergelut untuk masuk ke dalamnya) atau cara mengalih keluar mysql sepenuhnya dengan memadamkan fail dalam direktori tertentu (yang tidak wujud pada mulanya). < /p>

P粉436410586P粉436410586410 hari yang lalu696

membalas semua(2)saya akan balas

  • P粉986028039

    P粉9860280392023-12-14 10:11:56

    Saya akhirnya menemui penyelesaian untuk masalah saya. Saya akhirnya tidak mendapatkannya daripada satu sumber, tetapi menyusun sekumpulan perkara yang berbeza sehingga saya mendapati bahawa ini berkesan.

    1. Hentikan pelayan: `brew services stop mariadb
    2. Mulakannya menggunakan arahan berikut: mysql --skip-grant-tables
    3. Jalankan arahan ini untuk membetulkan jadual tanpa pengguna: mysql_upgrade --force
    4. Paksa tamatkan mysql: ps -ef | grep mysql 后跟 kill -9
    5. Mulakan pelayan semula: brew services start mariadb

    Saya telah mencuba mysql_install_db dahulu dan bukannya mysql_install_db 而不是某些网站建议的 mysql_upgrade --force ,但是自从 mysql.user seperti yang dicadangkan oleh sesetengah tapak, tetapi itu tidak berfungsi kerana jadual mysql.user masih ada. Ia hanya kosong.

    balas
    0
  • P粉600402085

    P粉6004020852023-12-14 09:05:11

    Ada dua kaedah:
    Kaedah 1:
    1. Nyahpasang pangkalan data mysql, padamkan fail data dalam direktori /data, dan kemudian pasang semula

    Kaedah 2:
    1. Hentikan perkhidmatan mysql (systemctl stop mysqld)
    2. Padam fail dalam direktori /data (rm -fr /data/*)
    3. Mulakan mysql (mysqld --defaults-file=/mysql/my.cnf --initialize --user=mysql --basedir=/mysql/app/mysql --datadir=/mysql/data/3306/data/)

    PS1: Laluan mungkin berbeza daripada laluan anda dan perlu ditukar mengikut direktori data anda sendiri

    balas
    0
  • Batalbalas