Trong hướng dẫn này, bạn sẽ học
- PostgreSQL Tạo người dùng trong PgAdmin
- PostgreSQL Tạo SQLShell cho người dùng (Dòng lệnh)
- Thêm người dùng hiện có vào Cơ sở dữ liệu
- Cập nhật PostgreSQL USER
- Người dùng đang xóa PostgreSQL
- Trang Cheat
PostgreSQL Tạo người dùng trong PgAdmin
Sau đây là quy trình từng bước về cách tạo người dùng trong PostgreSQL PgAdmin:
Bước 1) Nhấp chuột phải vào Đăng nhập / Vai trò nhóm -> Tạo -> Nhấp vào Đăng nhập / Vai trò nhóm
…Bước 2) Nhập tên cho Đăng nhập
Bước 3) Trong ngăn định nghĩa,
- Nhập mật khẩu
- Ngày hết hạn cho tài khoản
Bước 4) Trong phần đặc quyền,
- Nút chuyển đổi Có thể đăng nhập thành CÓ
- Chuyển Superuser thành CÓ
Bước 5) Trong phần SQL
- Bạn sẽ thấy truy vấn SQL để tạo người dùng theo các lựa chọn được thực hiện trong các bước trước đó
- Nhấp vào nút Lưu
Bước 6) Vai trò được tạo và phản ánh trong cây đối tượng
Bước 7) Tạo cơ sở dữ liệu và chỉ định myguru chủ sở hữu cho nó như được hiển thị trong ví dụ dưới đây tạo người dùng Postgres
Bước 8) Trong dòng lệnh, bạn có thể thấy chủ sở hữu là "myguru"
PostgreSQL Tạo SQLShell cho người dùng (Dòng lệnh)
Bạn có thể tạo người dùng bằng cách sử dụng lệnh dòng lệnh
TẠO NGƯỜI DÙNG
Trong PostgreSQL, tạo phương thức PostgreSQL người dùng thuận tiện hơn cho các lập trình viên và quản trị viên vì họ có quyền truy cập vào bảng điều khiển của máy chủ PostgreSQL. Hơn nữa, họ cần tạo và thực thi người dùng Postgres bằng một lệnh duy nhất thay cho việc đăng nhập và sử dụng giao diện của ứng dụng khách PostgreSQL.
Syntax:CREATE USER name WITH optionwhere the option can be:|SUPERUSER | NOSUPERUSER| CREATEROLE | NOCREATEROLE| CREATEDB | NOCREATEDB| INHERIT | NOINHERIT| LOGIN | NOLOGIN| REPLICATION | NOREPLICATION| BYPASSRLS | NOBYPASSRLS| CONNECTION LIMIT| ( ENCRYPTED ] PASSWORD 'password.'| VALID UNTIL 'timestamp1| IN ROLE role_name [,… J| IN GROUP role_name [,… ]| ROLE role_name [,… ]| ADMIN role_name [,… )| USER role_name [,… ]| SYSID uid
Thí dụ:
CREATE USER tom;
sẽ tạo ra một người dùng tom
CREATE USER tom WITH SUPERUSER;
Sẽ tạo một tome người dùng với các đặc quyền của người dùng siêu cấp. Hãy xem ví dụ sau.
Bước 1) Chúng tôi đang tạo ra một superuser hiệu lực đến 3 thứ Apri 2025 11:50:38 IST. Nhập lệnh sau
CREATE USER mytest WITHLOGINSUPERUSERCREATEDBCREATEROLEINHERITNOREPLICATIONCONNECTION LIMIT -1VALID UNTIL '2025-04-03T11:50:38+05:30'PASSWORD '123456';
Bước 2) Nhập lệnh \ du vào danh sách kiểm tra của người dùng
LƯU Ý: CREATE USER giống như lệnh CREATE ROLE. Sự khác biệt giữa hai lệnh là khi lệnh người dùng Postgres CREATE được viết, nó được mặc định ở trạng thái ĐĂNG NHẬP trong khi NOLOGIN được giả định khi tùy chọn CRETE ROLE được sử dụng.
Thêm người dùng hiện có vào Cơ sở dữ liệu
Bạn có thể cấp đặc quyền người dùng để truy cập cơ sở dữ liệu.
Ví dụ, chúng tôi cấp cho người dùng "mytest" tất cả các đặc quyền trên guru99 của người dùng
GRANT ALL PRIVILEGES ON DATABASE guru99 TO mytest;
Sau khi thực hiện lệnh thêm người dùng PostgreSQL, người dùng sẽ có thể truy cập cơ sở dữ liệu với các quyền đã cho.
Lệnh GRANT rất mạnh mẽ. Bạn có thể cấp các đặc quyền chi tiết như Chọn, Chèn, Cập nhật cho người dùng.
Cập nhật PostgreSQL USER
Thay đổi quyền của người dùng hiện tại
Bây giờ người dùng mới "mytest" của chúng tôi đã tồn tại, bạn có thể sử dụng ALTER USER để thay đổi các quyền được cấp cho thủ thư.
Định dạng của ALTER USER Postgres bao gồm tên của người dùng theo sau là một số tùy chọn để cho PostgreSQL biết những thay đổi dễ dàng nào cần thực hiện:
ALTER USER role_specification WITH OPTION1 OPTION2 OPTION3;
Thu hồi quyền
Bạn cần sử dụng lệnh này khi bạn mắc lỗi và chỉ định sai quyền mà bạn có thể muốn thu hồi. Bạn có thể sử dụng lệnh ALTER USER không có tiền tố trước các tùy chọn cho phép.
Ví dụ: chúng tôi có thể xóa trạng thái SUPERUSER khỏi mytest như:
ALTER USER mytest WITH NOSUPERUSER;
Sử dụng \ du, bạn sẽ thấy rằng đặc quyền Superuser đã bị xóa.
Chuyển nhượng quyền
Bạn có thể sử dụng quyền SUPERUSER của người dùng trở lại "mytest" bằng cách sử dụng lệnh sau
ALTER USER mytest WITH SUPERUSER;
Sử dụng \ du, bạn sẽ thấy rằng đặc quyền Superuser được thêm vào.
Người dùng đang xóa PostgreSQL
Bạn có thể sử dụng xóa bất kỳ người dùng nào nếu bạn chắc chắn rằng người dùng cụ thể không còn dành cho cơ sở dữ liệu của bạn. Lưu ý rằng việc xóa người dùng sẽ không bao giờ ảnh hưởng đến cơ sở dữ liệu thực tế.
Syntax: DROP USER [user]
Để xóa bất kỳ người dùng nào, bạn phải đảm bảo rằng người dùng đó là chủ sở hữu của cơ sở dữ liệu. Nếu không, bạn có thể nhận được thông báo lỗi.
ERROR: role "username" cannot be dropped because some objects depend on it
Thí dụ:
- Tài khoản "myguru" là chủ sở hữu của cơ sở dữ liệu "demoDB."
- Nhập lệnh DROP USER myguru
- Lỗi được hiển thị
Sau khi chúng tôi thay đổi chủ sở hữu cơ sở dữ liệu, người dùng có thể bị xóa
Trang Cheat
Đây là các lệnh quan trọng
Lệnh | Sự miêu tả |
---|---|
CREATE USER [user] |
Lệnh tạo người dùng |
ALTER USER role_specification |
Thay đổi quyền của người dùng hiện tại |
ALTER USER [user] |
Thu hồi quyền |
ALTER USER [user name] WITH SUPERUSER |
Chuyển nhượng quyền |
DROP USER [user] |
Lệnh xóa người dùng |