Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Không thể đăng nhập vào mysql 5.7.9 sau khi thay đổi mật khẩu

Hai điều đã thay đổi so với các phiên bản trước của mySQL (tôi đang sử dụng 5.7.10):

  1. systemd hiện được sử dụng để chăm sóc mySQL thay vì mysqld_safe (đó là lý do tại sao tôi nhận được -bash: mysqld_safe: command not found lỗi - nó chưa được cài đặt)

  2. Người dùng user cấu trúc bảng đã thay đổi.

Vì vậy, để đặt lại mật khẩu gốc, bạn vẫn khởi động mySQL bằng --skip-grant-tables các tùy chọn và cập nhật user nhưng cách bạn thực hiện đã thay đổi.

1. Stop mysql:
systemctl stop mysqld

2. Set the mySQL environment option 
systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"

3. Start mysql usig the options you just set
systemctl start mysqld

4. Login as root
mysql -u root

5. Update the root user password with these mysql commands
mysql> UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPassword')
    -> WHERE User = 'root' AND Host = 'localhost';
mysql> FLUSH PRIVILEGES;
mysql> quit

6. Stop mysql
systemctl stop mysqld

7. Unset the mySQL envitroment option so it starts normally next time
systemctl unset-environment MYSQLD_OPTS

8. Start mysql normally:
systemctl start mysqld

Try to login using your new password:
7. mysql -u root -p

Tham khảo

Như nó nói tại http://dev.mysql.com /doc/refman/5.7/en/mysqld-safe.html ,

Điều này sẽ đưa bạn đến http:// dev .mysql.com / doc / refman / 5.7 / vi / server-management-using-systemd.html nơi nó đề cập đến systemctl set-environment MYSQLD_OPTS= về cuối trang.

Các lệnh đặt lại mật khẩu nằm ở cuối http:// dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Lỗi truy vấn Python / MySQL:`Cột không xác định`

  2. Xóa khóa chính trong MySQL

  3. Chuyển đổi mã MySQL thành Access:GROUP_CONCAT và một bộ ba JOIN

  4. Chọn tất cả các hàng trùng lặp dựa trên một hoặc hai cột?

  5. Có cách nào để chèn một giá trị lớn vào DB mysql mà không thay đổi max_allowed_packet không?