Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Thiết lập mật khẩu chứa ký tự đặc biệt khi tạo user MySQL mới?

Tạo user MySQL với mật khẩu chứa ký tự đặc biệt

Để đặt mật khẩu chứa ký tự đặc biệt khi tạo user mới, sử dụng cú pháp chuẩn CREATE USER với mật khẩu đặt trong dấu nháy đơn.

Cú pháp

CREATE USER 'ten_user'@'ten_host' IDENTIFIED BY 'mat_khau_ky_tu_dac_biet';

Ví dụ minh họa

Tạo user Mike với mật khẩu Mike_123456 (chứa dấu gạch dưới và số):

mysql> CREATE USER 'Mike'@'localhost' IDENTIFIED BY 'Mike_123456';
Query OK, 0 rows affected (0.35 sec)

Kiểm tra user đã tạo trong bảng mysql.user:

mysql> SELECT user, host FROM mysql.user;

Kết quả (user Mike đã xuất hiện):

+------------------+-----------+
| user             | host      |
+------------------+-----------+
| Bob              | %         |
| Charlie          | %         |
| Robert           | %         |
| User2            | %         |
| mysql.infoschema | %         |
| mysql.session    | %         |
| mysql.sys        | %         |
| root             | %         |
| @UserName@       | localhost |
| Adam Smith       | localhost |
| Chris            | localhost |
| David            | localhost |
| James            | localhost |
| John             | localhost |
| John Doe         | localhost |
| Mike             | localhost |
| User1            | localhost |
| am               | localhost |
| hbstudent        | localhost |
| mysql.infoschema | localhost |
| mysql.session    | localhost |
+------------------+-----------+
21 rows in set (0.00 sec)

Lưu ý về ký tự đặc biệt trong mật khẩu

  • Nếu mật khẩu chứa dấu nháy đơn ('), hãy escape bằng cách viết hai dấu: '' hoặc dùng dấu nháy kép bao quanh: "mat'khau"
  • Ví dụ: IDENTIFIED BY "It's_Secret" hoặc IDENTIFIED BY 'It''s_Secret'
  • Ký tự %, _, @, #, $, !... đều được hỗ trợ bình thường
  • Từ MySQL 8.0, plugin xác thực mặc định là caching_sha2_password hỗ trợ tốt các ký tự Unicode

Thay đổi mật khẩu user hiện có

ALTER USER 'Mike'@'localhost' IDENTIFIED BY 'New_Pass@123';