Copy toàn bộ đoạn mã dưới đây rồi dán vào terminal:
mẹo nhanh hơn nếu máy bạn bật unix_socket cho root:
Chúc bạn thành công!
Mã:
# đặt mật khẩu mới ở đây
NEWPASS="123456"
# dừng service + diệt tiến trình còn sót
sudo systemctl stop mariadb 2>/dev/null || sudo systemctl stop mysql 2>/dev/null || true
sudo pkill -9 mysqld 2>/dev/null || true
sudo pkill -f mysqld_safe 2>/dev/null || true
# bật mariadb ở chế độ bỏ xác thực, không mở network
sudo mysqld_safe --skip-grant-tables --skip-networking --user=mysql >/tmp/mysqld_safe.out 2>&1 &
sleep 5
# đặt lại mật khẩu root theo cú pháp mariaDB 10.3
mysql -u root <<SQL
FLUSH PRIVILEGES;
UPDATE mysql.user
SET Password=PASSWORD('${NEWPASS}')
WHERE User='root' AND Host='localhost';
FLUSH PRIVILEGES;
SQL
# tắt chế độ skip và khởi động lại
sudo pkill -f mysqld_safe 2>/dev/null || true
sudo pkill -9 mysqld 2>/dev/null || true
sudo systemctl start mariadb || sudo systemctl start mysql
echo "xong. thử đăng nhập: mysql -u root -p (mật khẩu: ${NEWPASS})"
mẹo nhanh hơn nếu máy bạn bật unix_socket cho root:
Mã:
# đăng nhập không cần mật khẩu
sudo mysql
# rồi đặt lại mật khẩu:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
FLUSH PRIVILEGES;
Chúc bạn thành công!
