Як створити користувача в Postgresql?
Зі зростаючою потребою в управлінні великими обсягами даних системи баз даних продовжують розвиватися. PostgreSQL виділяється як одне з найнадійніших і найпродуктивніших рішень, доступних на сьогоднішній день, яке широко застосовується як для невеликих, так і для великих додатків.
Цей покроковий посібник допоможе вам створити користувача в PostgreSQL або створити користувача в Postgresql. Ми також розглянемо, як встановити сервер PostgreSQL на Ubuntu за допомогою Docker.
Що таке PostgreSQL?
PostgreSQL — це потужна система управління об'єктно-реляційними базами даних (ORDBMS) з відкритим кодом, відома своєю продуктивністю, цілісністю даних та гнучкістю. Вона є популярним вибором серед розробників та підприємств завдяки своїй стабільності та широкому набору функцій.
PostgreSQL дотримується принципів ACID — атомарності, узгодженості, ізоляції та стійкості — які забезпечують надійність транзакцій навіть у разі збою системи або несподіваних збоїв.
Ключові особливості PostgreSQL:
- Розширена підтримка географічних даних з індексацією та просторовими запитами
- Вбудована підтримка реплікації даних
- Потужна система контролю доступу на основі ролей
- Можливості повнотекстового пошуку
- Багатоверсійний контроль паралельності (MVCC) для ефективної обробки транзакцій
- Гнучка підтримка зберігання ключ-значення
Необхідні умови
Перш ніж почати, переконайтеся, що у вас є наступне:
- Система з останньою версією Ubuntu
- Docker встановлений на вашому комп'ютері (за необхідності зверніться до офіційної документації Docker)
- Ваш обліковий запис користувача повинен належати до групи Docker, що дозволить вам виконувати команди Docker без необхідності щоразу отримувати права суперкористувача.
Як створити користувача в PostgreSQL: покрокова інструкція
Щоб створити нового користувача (або роль) в PostgreSQL, спочатку налаштуємо екземпляр PostgreSQL у контейнері Docker. Після запуску контейнера підключимося до сервера PostgreSQL за допомогою командного рядка psql і продовжимо створення та управління ролями — все це в середовищі Docker.
Крок 1: Налаштування PostgreSQL за допомогою Docker
Найпростіший спосіб запустити PostgreSQL — це використовувати офіційний образ Docker, який підтримується спільнотою PostgreSQL.
Ви можете запустити контейнер за допомогою такої команди:
docker run --name postgres_db -e POSTGRES_PASSWORD=mysecretpassword -d postgres📋
Замініть mysecretpassword на надійний пароль на ваш вибір. Наприклад:
# docker run --name postgres_db -e POSTGRES_PASSWORD=password123 -d postgres
Ця команда завантажує образ PostgreSQL (якщо він ще не завантажений) і запускає контейнер із типовим користувачем postgres, який має повні права суперкористувача.
Щоб перевірити, чи контейнер працює належним чином, скористайтеся командою:
# docker ps
Це відобразить список усіх активних контейнерів, включаючи ваш екземпляр PostgreSQL.
Крок 2: Доступ до PostgreSQL через psql
Після запуску контейнера PostgreSQL ви можете підключитися до нього за допомогою psql, вбудованого інтерактивного терміналу PostgreSQL.
Використовуйте наступну команду для доступу до оболонки psql всередині контейнера:
# docker exec -it postgres_db psql -U postgres
Тут
- docker exec дозволяє виконувати команди всередині запущеного контейнера.
- -it вмикає інтерактивний режим.
- -U postgres вказує, що ви хочете підключитися як користувач postgres.
Опинившись всередині оболонки PostgreSQL, ви можете перелічити всі існуючі ролі за допомогою:
\du
Це відобразить список ролей (користувачів) разом з призначеними їм привілеями.
Важлива примітка: PostgreSQL використовує термін «роль» для позначення як користувачів, так і груп. Роль може мати привілеї входу (як користувач) або діяти як група, від якої інші ролі можуть успадковувати дозволи. По суті, ролі слугують механізмом контролю доступу в PostgreSQL.
Крок 3: Створення нового користувача в PostgreSQL (psql create user)
У PostgreSQL користувач — це просто роль, яка має дозвіл на вхід. Ви можете створити її за допомогою команди CREATE USER, яка автоматично включає привілей LOGIN.
Наприклад, щоб створити користувача з іменем editor і паролем:
CREATE USER editor WITH PASSWORD “password123”;
Щоб перевірити, чи користувач був успішно доданий, виконайте:
\du
Це відобразить список усіх ролей та призначених їм дозволів. Користувач editor з'явиться у списку із налаштуваннями за замовчуванням.
Крок 4: Надайте додаткові привілеї
Після створення користувача ви можете призначити йому додаткові дозволи. Наприклад, щоб дозволити користувачу editor створювати нові бази даних, виконайте:
ALTER USER editor CREATEDB;
Використовуйте команду \du ще раз, щоб підтвердити, що привілей CREATEDB було застосовано.
Крок 5: Перехід до нового користувача
Ви можете перейти до сеансу нового користувача за допомогою:
SET ROLE editor;
Оскільки цей користувач тепер має дозвіл на створення баз даних, ви можете спробувати створити одну:
CREATE DATABASE articles_db;
Висновок
У цьому підручнику показано, як запустити контейнер PostgreSQL за допомогою Docker, створити нового користувача (редактора), призначити привілеї бази даних та використовувати роль для управління базами даних. Для більш просунутих налаштувань обов'язково ознайомтеся з офіційною документацією PostgreSQL.
Bluevps пропонує миттєве налаштування KVM VPS у 20 локаціях по всьому світу, гарантуючи, що ваш віртуальний сервер буде готовий до роботи за лічені хвилини. Незалежно від того, чи ви використовуєте Linux чи Windows, ви отримаєте повну гнучкість завдяки широкому вибору панелей управління та 100% виділеним ресурсам, гарантованим завдяки віртуалізації KVM. Це забезпечує стабільну продуктивність та повну ізоляцію вашого середовища.
Завдяки зручному віддаленому доступу та контролю управління VPS є простим та ефективним, незалежно від того, де ви знаходитесь. Крім того, Bluevps надає цілодобову підтримку клієнтів, що робить його надійним вибором для розробників, підприємств та ентузіастів хостингу. Оберіть Bluevps.com для високопродуктивних, безпечних та миттєво доступних рішень VPS по всьому світу.
Blog