Cách thay đổi mysql_native_password

Bạn muốn thay đổi mật khẩu cho người dùng root MariaDB hay MySQL của mình, khi mới thiết lập MySQL và MariaDB, các bước thực hiện bao gồm các lệnh chính như sau


mysql -u root

SỬ DỤNG mysql;

THAY ĐỔI NGƯỜI DÙNG [email được bảo vệ] ĐƯỢC XÁC ĐỊNH QUA mysql_native_passSỬ DỤNG MẬT KHẨU("mật khẩu");

flush privileges;

2. Nếu không truy cập được vào mysql bạn có thể dùng lệnh này để tạo reset lại mysql, mariadb

sudo mysql_secure_installation

Thiết lập các thông số cần thiết. v

sudo mysql -u root -p

CẤP TẤT CẢ CÁC ĐẶC QUYỀN TRÊN *. * ĐẾN 'root'@'localhost'
  ĐƯỢC XÁC ĐỊNH BỞI '123456' VỚI TÙY CHỌN CẤP;


CẤP TẤT CẢ CÁC ĐẶC QUYỀN TRÊN *. * ĐẾN 'root'@'%'
  ĐƯỢC XÁC ĐỊNH BỞI '123456' VỚI TÙY CHỌN CẤP;


mysql -u root -p


:D


Hầu hết người dùng MySQL đều gặp lỗi 1698 (28000). Truy cập bị từ chối cho người dùng ‘root,@localhost. Thông báo lỗi này thường xuất hiện cho các cài đặt mới của MySQL khi bạn cố gắng kết nối MySQL với người dùng gốc

Hướng dẫn này sẽ chỉ cho bạn cách giải quyết nhanh chóng quyền truy cập bị từ chối cho người dùng root trên localhost. Các hướng dẫn được phác thảo áp dụng cho cả MySQL và MariaDB. Sẽ không cần phải sửa đổi bất kỳ bảng nào hoặc thực hiện cấu hình phức tạp. cách nhanh chóng giải quyết quyền truy cập bị từ chối đối với người dùng root trên localhost. Các hướng dẫn được phác thảo áp dụng cho cả MySQL và MariaDB. Sẽ không cần sửa đổi bất kỳ bảng nào hoặc thực hiện cấu hình phức tạp

Điều kiện tiên quyết

  • Truy cập vào một dòng lệnh hoặc cửa sổ thiết bị đầu cuối
  • MySQL hoặc MariaDB đã được cài đặt
  • Người dùng có quyền sudo hoặc rootsudo hoặc quyền root

Khi bạn cài đặt MySQL và cố gắng truy cập nó trên máy cục bộ với người dùng gốc, lệnh bạn sử dụng là

mysql -u root -p

Trong hầu hết các trường hợp, bạn sẽ nhận được thông báo truy cập thông báo lỗi bị từ chối cho người dùng ‘root,@localhost

Bạn có thể kích hoạt quyền truy cập root bằng cách sử dụng một lệnh MySQL

Giải quyết quyền truy cập bị từ chối cho lỗi gốc của người dùng

Để có thể đăng nhập vào MySQL bằng Root, trước tiên hãy sử dụng

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
0 để sửa đổi người dùng gốc.
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
0 để sửa đổi người dùng root.
sudo mysql

Nhập mật khẩu của bạn tại dấu nhắc. Một vỏ mysql tải

Use

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
1Command và thay đổi phương thức xác thực để đăng nhập vào MySQL bằng quyền root.
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
1lệnh và thay đổi phương thức xác thực để đăng nhập vào MySQL với quyền root.
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';

Lệnh này đã thay đổi mật khẩu cho người dùng gốc và đặt phương thức xác thực thành mysql_native_password. Đây là một phương pháp truyền thông để xác thực và nó không hoàn toàn như auth_plugin. Trong ví dụ trên, chúng tôi đặt gốc root thành mật khẩu, nhưng chúng tôi khuyến nghị bạn đặt mật khẩu mạnh hơn. mysql_native_password. Đây là phương pháp xác thực truyền thống và không an toàn bằng auth_plugin. Trong ví dụ trên, chúng tôi đặt “root” làm mật khẩu, nhưng chúng tôi khuyến khích bạn đặt mật khẩu mạnh hơn

Kiểm tra quyền truy cập MySQL user root

Sau khi bạn chạy các lệnh được liệt kê ở trên, hãy thoát vỏ MySQL bằng cách nhấn Ctrl + D trên bàn phím của bạn hoặc nhập

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
2 and nhấn Enter. Không cần phải khởi động lại dịch vụ MySQLD để đăng nhập. CTRL + D trên bàn phím của bạn hoặc gõ
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
2 và nhấn enter. Không cần khởi động lại dịch vụ mysqld để đăng nhập

Bây giờ hãy thử lại để truy cập MySQL bằng Root. In the end device, input

mysql -u root -p

Nhập mật khẩu bạn đã sử dụng với lệnh

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
1. Không nhập mật khẩu hệ thống để truy cập MySQL vì nó sẽ không hoạt động. Nếu mọi thứ hoạt động tốt, bạn sẽ xem tin nhắn chào mừng MySQL. lệnh
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
1. Không nhập mật khẩu hệ thống để truy cập MySQL vì nó sẽ không hoạt động. Nếu mọi thứ hoạt động tốt, bạn sẽ thấy thông báo chào mừng của MySQL

Lưu ý. Lệnh

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
21 could not active for MySQL version and Mariadb old than 5,7,6 and 10. 1. 20 match. Lệnh
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
1 có thể không hoạt động đối với các phiên bản MySQL và MariaDB cũ hơn 5. 7. 6 và 10. 1. 20 tương ứng

Kết luận

Bây giờ bạn đã biết cách bỏ qua lỗi MySQL 1698 (28000). Truy cập bị từ chối cho người dùng ‘root,@

Có nhiều cách khác nhau để tiếp cận vấn đề này, nhưng chúng tôi đã chọn phương pháp dễ nhất và nhanh nhất. Bảo đảm nhập các lệnh như được liệt kê trong bài viết để tránh lỗi trong cú pháp SQL

Lỗi truy cập của người Viking này bị từ chối là một trong những lỗi phổ biến nhất mà bạn sẽ gặp phải khi làm việc với MySQL

Tìm hiểu cách giải quyết nó và xem một loạt các giải pháp nếu bản sửa lỗi được đề xuất không hoạt động, trong bài viết này

Khi bạn cố gắng kết nối với cơ sở dữ liệu MySQL trên máy tính của riêng bạn (được gọi là Local LocalHost,), bạn có thể gặp lỗi này

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
4

You can get an error code before face it

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
5

Bạn cũng có thể gặp lỗi khi sử dụng mật khẩu không có mật khẩu

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
6

Bạn sẽ thấy điều này nếu bạn đăng nhập vào MySQL bằng dòng lệnh

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
7

Bạn cũng có thể thấy điều này nếu bạn đăng nhập vào MySQL bằng IDE như MySQL Workbench. Hoặc ngay cả khi bạn sử dụng phpmyadmin

Điều đó có nghĩa là gì?

Có một vài giải pháp cho vấn đề này, mà tôi đã nêu chi tiết dưới đây. Please try a, and if it does not active, try a other other

Ngoài ra, một mẹo để đăng nhập. don lồng nhập mật khẩu của bạn vào dòng lệnh, bởi vì điều này sẽ được lưu trữ trong lịch sử lệnh của bạn. Sử dụng tùy chọn -P, như đã được cập nhật ở trên, và sau đó bạn sẽ được nhắc nhập mật khẩu

Giải pháp 1. sudo after that change password

Nếu bạn nhận thấy lỗi Access Access bị từ chối, một cách để giải quyết vấn đề đó là sử dụng sudo để đăng nhập vào MySQL và thay đổi mật khẩu gốc

Root localhost trong mysql là gì?

[email được bảo vệ] cho phép bạn kết nối từ máy chủ DB thông qua mysql. sock (tep socket) [email protected]'%' cho phép bạn kết nối qua TCP/IP, nhưng bạn phải kết nối rõ ràng với giao thức đó. Nếu không, kết nối MySQLD của bạn là [email được bảo vệ]

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
8

Lỗi truy cập của người Viking này bị từ chối là một trong những lỗi phổ biến nhất mà bạn sẽ gặp phải khi làm việc với MySQL

Tìm hiểu cách giải quyết nó và xem một loạt các giải pháp nếu bản sửa lỗi được đề xuất không hoạt động, trong bài viết này

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
9

Thay thế từ your_new_password bằng mật khẩu an toàn mới mà bạn muốn sử dụng cho tài khoản gốc

Bước 7. Mở tệp của tôi. cnf bạn đã mở trong Bước 1 và xóa dòng về các bảng Skip-Grant và lưu tệp

Bước 5. Xóa các đặc quyền, nói với máy chủ, hãy làm mới các bảng cấp và áp dụng các thay đổi của bạn, với lệnh này

sudo mysql
0

Bước 6. Đặt mật khẩu mới cho tài khoản

sudo mysql
1

Kết quả

sử dụng người sử dụng truy cập vào nguồn gốcmysql_native_password

Bước 7. Thoát khỏi bảng điều khiển bằng cách nhấn Ctrl + D hoặc thoát

sudo mysql
2

Bước 8. Đăng nhập vào MySQL bằng tài khoản gốc và mật khẩu mới bạn đặt, sẽ hoạt động

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
7

Bây giờ bạn nên đăng nhập vào tài khoản gốc trong MySQL

Giải pháp 2. Edit file My. cnf

Nếu giải pháp không hoạt động, bạn có thể cần chỉnh sửa tệp mysql. cnf để cho phép thay đổi tài khoản gốc

Bước 1. Mở tệp của tôi. cnf. Điều này có thể được lưu trữ trong

sudo mysql
4

Nếu bạn không chắc nó ở đâu, hãy tìm kiếm thư mục cài đặt MySQL của bạn (ví dụ:. on Windows or Mac) for file

If you don't have my file. cnf (macOS không bao gồm tệp theo mặc định). Bạn có thể tạo một thư mục trong thư mục /etc nếu bạn thích

Bước 2. Add Remove from the archives table by [MySQLD]. Tệp của bạn có thể trông giống như thế này

sudo mysql
5

Bước 3. Khởi động lại máy chủ MySQL

Bước 4. Đăng nhập vào tài khoản gốc

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
7

Bước 5. Xóa các đặc quyền, nói với máy chủ, hãy làm mới các bảng cấp và áp dụng các thay đổi của bạn, với lệnh này

sudo mysql
0

Bước 6. Đặt mật khẩu mới cho tài khoản

sudo mysql
8

Thay thế từ your_new_password bằng mật khẩu an toàn mới mà bạn muốn sử dụng cho tài khoản gốc

Bước 7. Mở tệp của tôi. cnf bạn đã mở trong Bước 1 và xóa dòng về các bảng Skip-Grant và lưu tệp

Bước 8. Khởi động lại máy chủ MySQL một lần nữa

Bước 9. Đăng nhập vào tài khoản gốc một lần nữa

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
7

Bây giờ bạn sẽ có thể đăng nhập thành công bằng mật khẩu mới của mình và không gặp lỗi

Kết luận

Một trong hai giải pháp này hy vọng sẽ giải quyết vấn đề cho bạn và bạn không còn bị lỗi truy cập bị từ chối người dùng ‘root,@localhost'

Nếu bạn có bất kỳ câu hỏi nào, hãy sử dụng phần bình luận bên dưới

Làm cách nào để giải quyết quyền truy cập localhost bị từ chối người dùng gốc?

Sử dụng thay đổi lệnh của người dùng và thay đổi phương thức xác thực để đăng nhập vào MySQL bằng quyền root. đã thay đổi người dùng 'root'@'localhost' với mysql_native_password bằng 'insert_password';