Rumah > Soal Jawab > teks badan
P粉3121957002023-08-24 15:59:57
Satu-satunya kaedah yang berkesan untuk saya ialah yang diterangkan di sini (saya menjalankan ubuntu 14.04). Untuk kejelasan, saya ikuti langkah berikut:
sudo vim /etc/mysql/my.cnf
Tambah baris berikut di penghujung:
[mysqld] skip-grant-tables
sudo服务mysql重启
mysql -u root
使用mysql
select * from mysql.user where user = 'root';
- Lihat bahagian atas untuk menentukan sama ada lajur kata laluan dipanggil
kata laluan atau rentetan_pengesahan
UPDATE mysql.user set *password_field from above* = PASSWORD('your_new_password') where user = 'root' and host = 'localhost';
- Gunakan kata laluan yang betul yang disenaraikan di atas
刷新权限;
退出
sudo vim /etc/mysql/my.cnf
Jika anda ingin mengekalkan standard keselamatan, padamkan baris yang ditambahkan dalam langkah 2.
sudo服务mysql重启
Untuk rujukan: https://dev.mysql.com /doc/refman/5.7/en/resetting-permissions.html
P粉7574324912023-08-24 11:49:06
Tetapkan/tukar/set semula kata laluan root MySQL pada Ubuntu Linux. Masukkan baris berikut dalam terminal.
sudo /etc/init.d/mysql stop
/var/run/mysqld
不存在,则必须首先创建它:sudo mkdir -v /var/run/ mysqld && sudo chown mysql /var/run/mysqld
mysqld
配置:sudo mysqld --skip-grant-tables &
mysql -u root mysql
YOURNEWPASSWORD
dengan kata laluan baharu anda: Untuk MySQL <8.0
UPDATE mysql.user SET Password = PASSWORD('YOURNEWPASSWORD') WHERE User = 'root'; FLUSH PRIVILEGES;
Jika MySQL anda menggunakan pemalam pengesahan baharu, anda perlu menggunakan: update user set plugin="mysql_native_password" where User='root';
sebelum memuat semula kebenaran.
Nota: Kaedah ini tidak dianggap sebagai cara paling selamat untuk menetapkan semula kata laluan anda, tetapi ia berfungsi.
Untuk MySQL >= 8.0
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'YOURNEWPASSWORD';
FLUSH PRIVILEGES;
Seperti yang dinyatakan dalam ulasan @lambart, anda mungkin perlu mematikan proses mysql tanpa kata laluan sementara yang anda mulakan, iaitu sudo Killall -9 mysqld
,然后启动正常的守护进程:sudo服务mysql启动
Rujukan: