Rumah > pangkalan data > tutorial mysql > mysql terlupa kata laluan root

mysql terlupa kata laluan root

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2023-05-12 10:59:06
asal
626 orang telah melayarinya

MySQL ialah sistem pengurusan pangkalan data hubungan yang biasa digunakan yang sering digunakan untuk membina aplikasi web dan mengurus data. Dalam MySQL, pengguna root adalah pengguna yang mempunyai keistimewaan tertinggi dan biasanya digunakan untuk menguruskan keseluruhan pangkalan data. Tetapi dalam beberapa kes, kami mungkin terlupa kata laluan pengguna root. Artikel ini akan memperkenalkan beberapa cara biasa untuk menetapkan semula kata laluan pengguna root MySQL.

  1. Gunakan mysqld_safe untuk memulakan MySQL

Jika anda terlupa kata laluan pengguna root, kaedah pertama yang perlu anda cuba ialah menggunakan mysqld_safe untuk memulakan perkhidmatan MySQL. Kaedah ini memulakan MySQL tanpa memerlukan kata laluan dan membolehkan anda menukar kata laluan pengguna root. Langkah-langkahnya adalah seperti berikut:

Pertama, hentikan perkhidmatan MySQL.

$ sudo systemctl stop mysql

Kemudian, gunakan mysqld_safe untuk memulakan perkhidmatan MySQL dan nyatakan --skip-grant-tables.

$ sudo mysqld_safe --skip-grant-tables &

--skip-grant-tables parameter akan menyebabkan MySQL mengabaikan senarai kawalan akses, yang bermaksud sesiapa sahaja boleh menyambung ke pelayan MySQL dan mempunyai kebenaran root. Oleh sebab itu, anda harus memastikan bahawa hanya pengguna yang dipercayai mempunyai akses kepada pelayan.

Seterusnya, sambung ke pelayan MySQL dalam tetingkap terminal lain.

$ mysql -u root

Pada gesaan MySQL, jalankan arahan berikut untuk menukar kata laluan pengguna root.

mysql> KEMASKINI mysql.user SET authentication_string=PASSWORD('new_password') WHERE User='root';

Dalam arahan ini, ganti new_password dengan kata laluan baharu anda.

Akhir sekali, keluar dari MySQL dan mulakan semula perkhidmatan MySQL.

mysql> KEISTIMEWAAN FLUSH;
mysql> quit;
$ sudo systemctl start mysql

Kini anda boleh log masuk sebagai pengguna root dengan kata laluan baharu!

  1. Gunakan skrip mysql_secure_installation

Jika anda tidak boleh memulakan MySQL menggunakan mysqld_safe, anda juga boleh cuba menggunakan skrip mysql_secure_installation untuk menetapkan semula kata laluan pengguna root. Skrip ini boleh membuat beberapa tetapan untuk MySQL dengan cepat, termasuk menetapkan semula kata laluan pengguna root, memadamkan pengguna tanpa nama, melumpuhkan log masuk jauh, dsb.

Pertama, jalankan arahan berikut untuk memasang skrip mysql_secure_installation.

$ sudo apt-get update
$ sudo apt-get install mysql-server

Selepas pemasangan selesai, anda boleh menggunakan arahan berikut untuk menjalankan skrip mysql_secure_installation.

$ sudo mysql_secure_installation

Semasa proses berjalan, anda perlu menjawab beberapa soalan, termasuk menetapkan kata laluan pengguna root, memadamkan pengguna tanpa nama, dsb. Apabila menetapkan kata laluan, walaupun anda terlupa kata laluan asal pengguna root, anda boleh membiarkannya kosong dan memilih untuk menetapkan kata laluan baharu. Setelah semuanya disediakan, anda akan dapat log masuk sebagai root menggunakan kata laluan baharu anda.

  1. Mulakan MySQL menggunakan parameter skip-grant-tables

Jika kedua-dua kaedah di atas tidak berfungsi, percubaan terakhir ialah memulakan MySQL menggunakan skip-grant- parameter jadual. Walaupun kaedah ini boleh memulakan MySQL, ia meninggalkan pangkalan data dalam keadaan terdedah dan tidak boleh digunakan dalam persekitaran pengeluaran.

Pertama, cari fail konfigurasi MySQL my.cnf atau my.ini. Fail harus mengandungi baris berikut:

[mysqld]
skip-grant-tables

Jika fail tidak wujud, anda boleh mencipta fail baharu dan menambah dua baris di atas untuk memfailkan dan menyimpannya sebagai my.cnf atau my.ini.

Kemudian, gunakan arahan berikut untuk memulakan semula MySQL.

$ sudo systemctl restart mysql

Selepas dimulakan semula, anda akan dapat log masuk ke MySQL sebagai pengguna root tanpa memasukkan kata laluan. Pada prompt MySQL, masukkan arahan berikut untuk menukar kata laluan pengguna root.

mysql> KEMASKINI mysql.user SET authentication_string=PASSWORD('new_password') WHERE User='root';

Ganti new_password dengan kata laluan baharu anda, kemudian keluar dari MySQL dan mulakan semula perkhidmatan MySQL .

mysql> KEISTIMEWAAN FLUSH;
mysql> quit;
$ sudo systemctl restart mysql

Kini anda boleh log masuk sebagai pengguna root dengan kata laluan baharu!

Ringkasan

Melupakan kata laluan pengguna root MySQL adalah masalah biasa, tetapi terdapat beberapa cara untuk menyelesaikannya. Dalam kebanyakan kes, tetapan semula kata laluan adalah mudah menggunakan skrip mysqld_safe atau mysql_secure_installation. Jika kaedah ini tidak berfungsi, memulakan MySQL dengan parameter skip-grant-tables mungkin merupakan pilihan terakhir, tetapi tidak disyorkan dalam persekitaran pengeluaran.

Atas ialah kandungan terperinci mysql terlupa kata laluan root. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan