Създаване на потребител в PostgreSQL: Как да добавя, Alt & Да се ​​изтрие ли USER?

Съдържание:

Anonim

В този урок ще научите

  • PostgreSQL Създаване на потребител в PgAdmin
  • PostgreSQL Създаване на потребителска SQLShell (команден ред)
  • Добавете съществуващ потребител към база данни
  • PostgreSQL Актуализиране на ПОТРЕБИТЕЛ
  • PostgreSQL Изтриване на потребител
  • Пищов

PostgreSQL Създаване на потребител в PgAdmin

Следва стъпка по стъпка процес за това как да създадете потребител в PostgreSQL PgAdmin:

Стъпка 1) Щракнете с десния бутон върху Вход / Роля на групата -> Създаване -> Щракнете върху Вход / Роля на групата

...

Стъпка 2) Въведете името за вход

Стъпка 3) В екрана за дефиниция,

  1. Въведете паролата
  2. Срок на валидност на акаунта

Стъпка 4) В раздела за привилегии,

  1. Превключете бутона за влизане в „ДА“
  2. Превключете суперпотребителя на ДА

Стъпка 5) В раздела SQL

  1. Ще видите SQL заявката за създаване на потребител според изборите, направени в предишните стъпки
  2. Щракнете върху бутона Запазване

Стъпка 6) Ролята се създава и отразява в дървото на обекта

Стъпка 7) Създайте база данни и задайте собственик myguru към нея, както е показано по-долу, създайте потребителски пример Postgres

Стъпка 8) В командния ред можете да видите, че собственикът е "myguru"

PostgreSQL Създаване на потребителска SQLShell (команден ред)

Можете да създадете потребител, като използвате командата на командния ред

СЪЗДАЙТЕ ПОТРЕБИТЕЛ

В PostgreSQL създайте потребителски метод PostgreSQL е по-удобен за програмисти и администратори, тъй като те имат достъп до конзолата на PostgreSQL сървъра. Освен това те се нуждаят от създаване на потребител на Postgres и изпълнение с една команда вместо влизане и използване на интерфейса на клиента 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

Пример:

CREATE USER tom;

ще създаде потребител tom

CREATE USER tom WITH SUPERUSER;

Ще създаде потребителски том с права на суперпотребител. Нека да видим следния пример.

Стъпка 1) Създаваме суперпотребител валидна до 3 -ти APRI 2025 11:50:38 IST. Въведете следната команда

CREATE USER mytest WITHLOGINSUPERUSERCREATEDBCREATEROLEINHERITNOREPLICATIONCONNECTION LIMIT -1VALID UNTIL '2025-04-03T11:50:38+05:30'PASSWORD '123456';

Стъпка 2) Въведете command \ du в контролния списък на потребителите

ЗАБЕЛЕЖКА: CREATE USER е същото като командата CREATE ROLE. Разликата между двете команди е, когато е написана потребителската команда Postgres CREATE, тя по подразбиране е в състояние LOGIN, докато NOLOGIN се приема, когато се използва опцията CRETE ROLE.

Добавете съществуващ потребител към база данни

Можете да предоставите на потребителски привилегии за достъп до база данни.

Например даваме на потребителя „mytest“ всички привилегии на потребителя guru99

GRANT ALL PRIVILEGES ON DATABASE guru99 TO mytest;

След изпълнението на командата за добавяне на потребител PostgreSQL, потребителят ще има достъп до базата данни с дадените разрешения.

Командата GRANT е много мощна. Можете да дадете подробни привилегии като Избор, Вмъкване, Актуализиране на потребител.

PostgreSQL Актуализиране на ПОТРЕБИТЕЛ

Промяна на съществуващите потребителски разрешения

Сега, когато нашият нов потребителски "mytest" съществува, можете да използвате ALTER USER, за да промените разрешенията, предоставени на библиотекаря.

Форматът на ALTER USER Postgres включва името на потребителя, последвано от някои опции, за да каже на PostgreSQL кои разрешителни промени да направи:

ALTER USER role_specification WITH OPTION1 OPTION2 OPTION3;

Отнемане на разрешения

Трябва да използвате тази команда, когато сгрешите и неправилно присвоите разрешение, което може да искате да оттеглите. Можете да използвате командата ALTER USER без префикс преди разрешителните опции.

Например можем да премахнем състоянието на SUPERUSER от mytest като:

ALTER USER mytest WITH NOSUPERUSER;

Използвайки \ du, ще забележите, че привилегията на суперпотребителя е премахната.

Присвояване на разрешение

Можете да използвате потребителското разрешение SUPERUSER обратно "mytest", като използвате следната команда

ALTER USER mytest WITH SUPERUSER;

Използвайки \ du, ще забележите, че привилегията на суперпотребителя е добавена.

PostgreSQL Изтриване на потребител

Можете да използвате изтриване на всеки потребител, ако сте сигурни, че конкретният потребител вече не е за вашата база данни. Имайте предвид, че изтриването на потребителите никога няма да повлияе на действителната база данни.

Syntax: DROP USER [user]

За да изтриете всеки потребител, трябва да сте сигурни, че потребителят е собственик на базата данни. В противен случай може да получите съобщение за грешка.

ERROR: role "username" cannot be dropped because some objects depend on it

Пример:

  1. Акаунтът "myguru" е собственик на база данни "demoDB."
  2. Въведете команда DROP USER myguru
  3. Показва се грешка

След като сменим собственика на базата данни, потребителят може да бъде изтрит

Пищов

Ето важни команди

Команди Описание
CREATE USER [user]

Команда за създаване на потребител

ALTER USER role_specification

Промяна на съществуващите потребителски разрешения

ALTER USER [user]

Отнемане на разрешения

ALTER USER [user name] WITH SUPERUSER

Присвояване на разрешение

DROP USER [user]

Команда за изтриване на потребител