Hướng dẫn nhanh từng bước về cách tạo người dùng trên MySQL
Ngay sau khi bạn cài đặt MySQL, bạn sẽ córoot
người dùng có sẵn.
Đây là người dùng mà bạn có thể sử dụng để thử và xem MySQL có hoạt động hay không, nhưng đó không phải là người dùng cho các kiểu sử dụng khác.
Tại sao? Bởi vì nóquá mạnh mẽ.
Với sức mạnh to lớn đi kèm với trách nhiệm lớn (chú của Người Nhện nói). Và đặc biệt, nguy hiểm rất lớn nếu bạn mắc sai lầm.
Thay vào đó, bạn nên tạo những người dùng đặc biệt chỉ có quyền thực hiện công việc của họ và không hơn thế nữa. Tương tự đối với việc sử dụng Linux hoặc bất kỳ hệ thống Unix nào, ví dụ: bạn không muốn sử dụngroot
người dùng, nhưng tài khoản người dùng của riêng bạn.
Để tạo người dùng mới, hãy kết nối với MySQL bằng cách sử dụngroot
người sử dụng:
mysql -u root -p
sau đó sử dụng lệnh
CREATE USER '<username>'@'localhost' IDENTIFIED BY '<password>';
Ví dụ: để tạo một người dùng có têntest_user
với mật khẩutest_password12A
chạy lệnh:
CREATE USER 'test_user'@'localhost' IDENTIFIED BY 'test_password12A';
Lệnh sẽ trả về một dòng nói rằngQuery OK, 0 rows affected (X.XX sec)
:
Nếu bạn sử dụng mật khẩu không hợp lệ, hệ thống sẽ cho bạn biết một số thứ nhưERROR 1819 (HY000): Your password does not satisfy the current policy requirements
. Trong trường hợp này, lỗi nói rằng mật khẩu không đủ phức tạp, bởi vì khi tôi cài đặt MySQL, tôi đã yêu cầu nó sử dụng một chính sách nhất định về mật khẩu.
Thật tuyệt! Bây giờ người dùng đã được tạo và chúng tôi có thể kết nối bằng cách sử dụng người dùng đó với MySQL. Từ dòng lệnh, bạn có thể thoát bằng cách gõQUIT
và gõ:
mysql -u test_user -p
Bây giờ nếu tôi cố gắng tạo cơ sở dữ liệu, tôi sẽ gặp lỗi nóiERROR 1044 (42000): Access denied for user 'test_user'@'localhost' to database 'testing'
:
Tại sao? Vì người dùngkhông có quyền tạo cơ sở dữ liệu mới.
Chúng ta sẽ xem cách làm việc với các quyền trong một hướng dẫn khác.
Điều đáng nói là@'localhost'
chuỗi chúng tôi đã sử dụng để tạo người dùng. Điều này cho MySQL biết rằng người dùng chỉ có thể kết nối từ localhost. Điều này tốt khi kiểm tra mọi thứ và khi bất kỳ ứng dụng nào sẽ kết nối với MySQL đang chạy trên cùng một máy tính chạy DBMS.
Khi điều này không đúng, bạn cần phải nhập thủ công IP mà người dùng sẽ kết nối từ đó hoặc sử dụng%
ký tự đại diện:
CREATE USER 'test_user'@'%' IDENTIFIED BY 'test_password12A';
Tôi muốn kết thúc hướng dẫn này bằng cách chỉ ra cách xóa người dùng mà chúng tôi đã tạo:
DROP USER 'test_user'@'localhost';
Các hướng dẫn khác về cơ sở dữ liệu:
- Hướng dẫn kiến thức cơ bản về MongoDB
- MongoDB khác với cơ sở dữ liệu SQL như thế nào
- Hệ thống thông tin, dữ liệu và thông tin
- Mô hình dữ liệu
- Giới thiệu về Mô hình Dữ liệu ER
- Mô hình quan hệ
- Đại số quan hệ
- Cơ sở dữ liệu quan hệ
- Cơ sở dữ liệu là gì? Và một DBMS?
- Giới thiệu về SQL
- Cách cài đặt PostgreSQL trên macOS
- Bạn luôn cần một cơ sở dữ liệu cho ứng dụng của mình?
- Cách cài đặt SQLite trên macOS
- Giới thiệu về PostgreSQL
- Quyền người dùng PostgreSQL
- Cách liệt kê tất cả người dùng trong PostgreSQL
- Cách chuyển đổi cơ sở dữ liệu bằng PostgreSQL
- Cách liệt kê tất cả cơ sở dữ liệu bằng PostgreSQL
- Cách liệt kê các bảng trong cơ sở dữ liệu hiện tại bằng PostgreSQL
- Cách cài đặt MySQL trên macOS
- Tạo người dùng trên MySQL
- PostgreSQL và MySQL, một so sánh
- Quyền của người dùng SQLite
- Quyền của người dùng MySQL
- SQL, tạo bảng
- SQL, thêm dữ liệu vào bảng
- SQL, cách sử dụng SELECT
- SQL, Xử lý các ô trống
- SQL, khóa duy nhất và khóa chính
- SQL, cách cập nhật dữ liệu
- SQL, cách cập nhật cấu trúc bảng
- SQL, cách xóa dữ liệu và bảng
- SQL tham gia
- Chế độ xem SQL
- Cách chèn nhiều mục cùng lúc trong bộ sưu tập MongoDB
- Cách xóa tất cả các mục khỏi bộ sưu tập MongoDB