как создать пользователя postgresql linux

Работаем с PostgreSQL через командную строку в Linux

Установка PostgreSQL на Linux (Mint)

Для подключения к базе данных PostgreSQL понадобится установленный PostgreSQL клиент:

Для установки PostgreSQL сервера:

Проверим, можем ли мы подключиться к базе данных PostgreSQL:

Вывод команды должен быть примерно таким:

PostgreSQL Подключение, Пользователи (Роли) и Базы Данных

Логин в только что установленный postgreSQL сервер нужно производить под именем пользователя postgres:

Для подключения к базе данных PostgreSQL можно использовать команду:

После ввода пароля и успешного подключения к базе данных PostgreSQL, можно посылать SQL-запросы и psql-команды.

PostgreSQL создание новой роли и базы данных

Создать новую роль c именем admin (указывайте нужное имя):

Создание новой базы данных:

Дать права роли на базу данных:

Включить удаленный PostgreSQL доступ для пользователей

Нам нужно отредактировать файл /etc/postgresql/ /main/pg_hba.conf, задав опцию md5 вместо peer.

может быть 10, 11, 12 и т.д.

После этого сделать restart PostgreSQL:

Полезные команды PostgreSQL

Выйти из клиента PostgreSQL:

Показать список баз данных PostgreSQL:

Показать список таблиц:

Показать список пользователей (ролей):

Показать структуру таблицы:

Переименовать базу данных:

Удалить базу данных:

Изменить текущую базу данных в PostgreSQL (вы не сможете переименовать или удалить текущую базу данных):

\connect db_name или более короткий alias: \c db_name

Удалить роль (пользователя):

Нужно удалить привелегии у роли, например если нужно удалить роль admin2, нужно выполнить последовательность комманд с Drop Owned:

Дать права пользователю/роли на логин ( role is not permitted to log in ):

Выбор shema psql в консоли:

Посмотреть список всех схем:

Подключиться к конкретной схеме:

Sequences

Получить имена всех созданных sequences:

Получить последнее значение sequence, которые будет присвоено новой вставляемой в таблицу записи:

Источник

7) Создать, изменить, добавить, удалить пользователя

В этом уроке вы узнаете

PostgreSQL Создать пользователя в PgAdmin

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Шаг 2) Введите имя для входа

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Шаг 3) В области определения

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Шаг 4) В разделе привилегий

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Шаг 5) В разделе SQL

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Шаг 6) Роль создана и отражена в дереве объектов

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Шаг 7) Создайте базу данных и назначьте на нее владельца myguru.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Шаг 8) В командной строке вы можете увидеть владельца «myguru»

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

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

Вы можете создать пользователя с помощью командной строки

В PostgreSQL этот метод более удобен для программистов и администраторов, поскольку они имеют доступ к консоли сервера PostgreSQL. Более того, их необходимо выполнить с помощью одной команды вместо входа в систему и использования интерфейса клиента PostgreSQL.

создаст пользователя Том

Создаст пользовательский том с привилегиями суперпользователя. Давайте посмотрим на следующий пример.

Шаг 1) Мы создаем суперпользователя сроком действия до 3 — го Apri 2025 11:50:38 IST. Введите следующую команду

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Шаг 2) Введите команду \ du в контрольный список пользователей

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

ПРИМЕЧАНИЕ. CREATE USER аналогична команде CREATE ROLE. Разница между этими двумя командами заключается в том, что при написании команды CREATE USER она по умолчанию находится в состоянии LOGIN, тогда как NOLOGIN предполагается, когда используется опция CRETE ROLE.

Добавить существующего пользователя в базу данных

Вы можете предоставить пользователю права доступа к базе данных.

Например, мы предоставляем пользователю mytest все привилегии для пользователя guru99.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

После выполнения этой команды пользователь сможет получить доступ к базе данных с данными разрешениями.

Команда GRANT очень мощная. Вы можете дать пользователю детальные права, такие как «Выбрать», «Вставить», «Обновить».

Обновление PostgreSQL ПОЛЬЗОВАТЕЛЬ

Изменение существующих прав пользователя

Теперь, когда наш новый пользователь «mytest» существует, вы можете использовать ALTER USER для изменения разрешений, предоставленных библиотекарю.

Формат ALTER USER включает имя пользователя, за которым следуют некоторые параметры, чтобы сообщить PostgreSQL, какие допустимые изменения необходимо сделать:

Отзыв разрешений

Вам нужно использовать эту команду, когда вы делаете ошибку и неправильно назначаете разрешение, которое вы можете отозвать. Вы можете использовать команду ALTER USER без префикса перед разрешающими опциями.

Например, мы можем удалить статус SUPERUSER из mytest, например:

Используя \ du, вы увидите, что привилегия суперпользователя удалена.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Назначение разрешения

Вы можете использовать права пользователя SUPERUSER обратно «mytest», используя следующую команду

Используя \ du, вы увидите, что привилегия суперпользователя добавлена.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

PostgreSQL, удаляющий пользователя

Вы можете использовать удалить любого пользователя, если вы уверены, что конкретный пользователь больше не подходит для вашей базы данных. Обратите внимание, что удаление пользователей никогда не повлияет на реальную базу данных.

Чтобы удалить любого пользователя, вы должны убедиться, что он является владельцем базы данных. В противном случае вы можете получить сообщение об ошибке.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Как только мы изменим владельца базы данных, пользователь может быть удален

Источник

Как работать с пользователями в PostgreSQL

Часть нижеописанных операций нужно выполнять в командной оболочке PostgreSQL. Она может быть запущена от пользователя postgres — чтобы войти в систему от данного пользователя, вводим:

* если система выдаст ошибку, связанную с нехваткой прав, сначала повышаем привилегии командой sudo su или su.

Теперь запускаем командную оболочку PostgreSQL:

* в данном примере, вход выполняется от учетной записи postgres к шаблонной базе template1.

Для просмотра всех пользователей СУБД:

=# select * from pg_user;

Создание нового пользователя

Для того, чтобы была возможность подключения к СУБД PostgreSQL от нового пользователя, необходимо создать данного пользователя, назначить ему права, выполнить настройку файла pg_hba.conf.

1. Создание пользователя

а) Добавление новой роли (пользователя) из оболочки SQL:

=# CREATE USER dmosk WITH PASSWORD ‘myPassword’;

* в примере создана роль dmosk с паролем myPassword.

б) Добавление новой роли (пользователя) из командной строки Linux:

2. Назначение прав на использование базы данных

Даем права на базу командой:

=# GRANT ALL PRIVILEGES ON DATABASE «database1» to dmosk;

Теперь подключаемся к базе, к которой хотим дать доступ:

* в примере подсоединимся к базе с названием database1.

а) Так мы добавим все права на использование всех таблиц в базе database1 учетной записи dmosk:

database1=# GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO «dmosk»;

* в большинстве случаев, используется схема по умолчанию public. Но администратор может создать новую схему. Это нужно учитывать при назначении прав.

б) Также можно дать доступ к базе для определенных таблиц:

database1=# GRANT ALL PRIVILEGES ON TABLE table1 IN SCHEMA public TO «dmosk»;

* в данном примере мы даем права на таблицу table1.

Выходим из SQL-оболочки:

3. Настройка файла pg_hba.conf

Для возможности подключиться к СУБД от созданного пользователя, необходимо проверить настройки прав в конфигурационном файле pg_hba.conf.

Для начала смотрим путь расположения данных для PostgreSQL:

В ответ мы получим, что-то на подобие:

* в данном примере /var/lib/pgsql/9.6/data/ — путь расположения конфигурационных файлов.

Добавляем права на подключение нашему созданному пользователю:

.
# IPv4 local connections:
host all dmosk 127.0.0.1/32 md5
.

* в данном примере мы разрешили подключаться пользователю dmosk ко всем базам на сервере (all) от узла 127.0.0.1 (localhost) с требованием пароля (md5).
* необходимо, чтобы данная строка была выше строки, которая прописана по умолчанию
host all all 127.0.0.1/32 ident.

После перезапускаем службу:

systemctl restart postgresql-9.6

* в данном примере установлен postgresql версии 9.6, для разных версий на разных операционных системах команды для перезапуска сервиса могут быть разные.

4. Проверка

Для теста пробуем подключиться к Postgre с помощью созданного пользователя:

Настройка прав доступа к базе с помощью групп

Сначала создадим групповую роль:

=# CREATE ROLE «myRole» NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;

* данной командой создана группа myRole с минимальными правами.

Теперь добавим ранее созданного пользователя dmosk в эту группу:

=# GRANT «myRole» TO dmosk;

Подключимся к базе данных, для которой хотим настроить права

и предоставим все права для группы myRole всем таблицам базы database1

database1=# GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO GROUP «myRole»;

Редактирование пользователя

1. Смена пароля

Рассмотрим несколько примеров смены пароля пользователя.

=# ALTER USER postgres PASSWORD ‘password’

* в данном примере мы зададим пароль password для пользователя postgres.

С запросов ввода пароля:

* после ввода данной команды система потребует дважды ввести пароль для пользователя (в нашем примере, postgres).

Из командной строки Linux:

* по сути, мы выполняем также запрос в оболочке sql.

Удаление пользователей и групп

Удаление пользователя выполняется следующей командой:

database1=# REVOKE ALL PRIVILEGES ON ALL TABLES IN SCHEMA public FROM «dmosk»;

* обратите внимание, данный запрос отличается от предоставления прав двумя моментами: 1) вместо GRANT пишем REVOKE; 2) вместо TO «dmosk» пишем FROM «dmosk»;

Назначение особых прав пользователям PostgreSQL

Помимо ALL PRIVILEGES можно выдавать права на особые операции, например:

=# GRANT SELECT, UPDATE, INSERT ON ALL TABLES IN SCHEMA public TO «dmosk»;

* команда позволит выдать права на получение данных, их обновление и добавление. Другие операции, например, удаление будут запрещены для пользователя dmosk.

Назначение прав для определенной таблицы:

database1=# GRANT ALL PRIVILEGES ON table_users TO «dmosk»;

* в данном примере мы предоставим все права на таблицу table_users в базе данных database1;

Учетная запись для резервного копирования

Для выполнения резервного копирования лучше всего подключаться к базе с минимальными привилегиями.

Сначала создаем роль, которую будем использовать для выполнения резервного копирования:

=# CREATE USER bkpuser WITH PASSWORD ‘bkppasswd’;

* мы создадим учетную запись bkpuser с паролем bkppasswd.

Предоставляем права на подключения к базе

=# GRANT CONNECT ON DATABASE database TO bkpuser;

* в данном примере к базе database.

Подключаемся к базе (в нашем примере database):

Даем права на все последовательности в схеме:

=# GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO bkpuser;

* мы дали права для схемы public. Это схема является схемой по умолчанию, но в вашем случае она может быть другой. В таком случае, подставляем свое значение.

Графический интерфейс

Иногда проще воспользоваться программой для выставления прав и работы с PostgreSQL. Могу посоветовать приложение pgAdmin. Оно позволит в оконном режиме не только создать и удалить пользователей, но и полноценно работать с СУБД.

Источник

Установка и настройка PostgreSQL 10 на Linux Ubuntu Server

Привет! Материал сегодня будет посвящен рассмотрению процесса установки СУБД PostgreSQL 10 на серверную операционную систему Linux Ubuntu Server, а также первоначальной настройки PostgreSQL 10, для того чтобы можно было ее использовать, например, в сети своей организации.

Другими словами, сейчас мы с Вами реализуем сервер баз данных на базе Linux Ubuntu Server и PostgreSQL 10, который будет иметь базовую настройку. Если Вас интересует реализация подобного сервера только на базе операционной системы CentOS 7.1, то можете ознакомиться с материалом «Установка PostgreSQL 9.4 на CentOS 7.1», в нем мы как раз рассматривали данный процесс.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Так как PostgreSQL 10 – это новая версия данной системы управления базами данных, то начать предлагаю с краткого рассмотрения новых возможностей 10 версии.

Примечание! 10 версия PostgreSQL была актуальна на момент написания статьи, на текущий момент доступны новые версии.

Что нового в PostgreSQL 10?

Начиная с PostgreSQL 10, меняется схема нумерации версий, это вызвано тем, что раньше выходило множество минорных версий (например, 9.x), многие из которых на самом деле вносили значительные изменения не соответствующие минорным, теперь мажорные версии будут нумероваться 10, 11, 12, а минорные 10.1, 10.2, 11.1 и так далее.

Основные нововведения:

Более детально обо всех нововведениях можете почитать на официальном сайте – PostgreSQL 10.

Установка PostgreSQL 10 на Linux Ubuntu Server 16.04

Как Вы уже, наверное, поняли рассматривать процесс установки и соответственно настройки PostgreSQL 10 мы будем на примере версии Ubuntu Server 16.04, так как эта версия имеет долгосрочную поддержку и на текущий момент является актуальной среди LTS версий.

Шаг 1

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Шаг 2

Затем первое, что нам нужно сделать, это проверить есть ли в репозиториях версия PostgreSQL 10. Это можно сделать путем ввода следующей команды.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Как видим, в Ubuntu Server 16.04 10 версии PostgreSQL нет, поэтому нам нужно подключить необходимый репозиторий, в котором присутствует PostgreSQL 10. Если у Вас более новая версия Ubuntu Server и в стандартных репозиториях есть 10 версия PostgreSQL, то дополнительный репозиторий Вам подключать не нужно, т.е. данный шаг Вы пропускаете.

Для подключения репозитория нам необходимо создать специальный файл с адресом нужного репозитория. Адреса для каждой версии Ubuntu разные, поэтому если у Вас версия Ubuntu не 16.04, то уточнить адрес Вы можете на официальном сайте PostgreSQL на странице загрузке – вот она.

После перехода на страницу выбираете версию Ubuntu, после чего у Вас отобразится адрес нужного репозитория.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Для упрощения процедуры создания файла давайте напишем скрипт с выводом адреса репозитория, а вывод перенаправим в файл. Для Ubuntu Server 16.04 подключение нужного репозитория будет выглядеть следующим образом.

Также нам необходимо импортировать ключ подписи репозитория, для этого вводим команду.

Далее обновляем список пакетов.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

И еще раз проверяем наличие пакета с PostgreSQL 10.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Теперь нужный пакет у нас есть, и мы можем переходить к установке PostgreSQL 10.

Шаг 3

Для установки PostgreSQL 10 пишем следующую команду.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

По окончанию процесса установки проверяем, запущен ли сервер PostgreSQL.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Как видим, PostgreSQL 10 установился и работает.

Базовая настройка PostgreSQL 10 в Linux Ubuntu Server

После установки нам необходимо выполнить базовую настройку PostgreSQL 10, например: создать пользователя, указать какие сетевые интерфейсы будет прослушивать сервер, а также разрешить подключение по сети. Начнем мы с создания пользователя и базы данных.

Создание пользователя и базы данных в PostgreSQL

После установки, к серверу PostgreSQL мы можем подключиться только с помощью системного пользователя postgres, причем без пароля. Для этого переключаемся на пользователя postgres (учетная запись в Ubuntu создана автоматически во время установки PostgreSQL).

Запускаем psql — это консоль управления PostgreSQL.

Сначала зададим пароль для пользователя postgres.

Затем создаем нового пользователя на сервере PostgreSQL, так как работать от имени postgres крайне не рекомендуется.

где, testuser – это имя пользователя, ‘123456’ – это его пароль.

Далее давайте создадим базу данных.

где, testdb – это имя новой базы данных.

Теперь давайте дадим права на управление БД нашему новому пользователю.

Все готово, выходим из консоли.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Для проверки, давайте подключимся к PostgreSQL от имени нового пользователя, на предложение о вводе пароля вводим пароль от новой учетной записи.

Работает. Для выхода снова набираем \q.

Для переключения обратно на root вводим exit.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Разрешаем подключение к PostgreSQL по сети

По умолчанию PostgreSQL прослушивает только адрес localhost, поэтому для того чтобы мы могли подключаться по сети, нам нужно указать какие сетевые интерфейсы будет просушивать PostgreSQL. Я для примера укажу, что прослушивать нужно все доступные интерфейсы. Если у Вас несколько сетевых интерфейсов, и Вы хотите, чтобы PostgreSQL использовал только один конкретный, то Вы его можете указать именно здесь.

Для этого открываем файл postgresql.conf, например редактором nano.

Находим следующую строку.

и заменяем на (вместо звездочки Вы в случае необходимости указываете IP адрес нужного интерфейса).

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Сохраняем изменения сочетанием клавиш CTRL+O и подтверждаем нажатием Enter, затем просто закрываем редактор nano сочетанием клавиш CTRL+X.

Теперь давайте разрешим подключение из сети 10.0.2.0/24 с методом аутентификации md5. Для этого открываем файл pg_hba.conf

Ищем вот такие строки.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

И вносим следующие изменения (если IPv6 Вы не будете использовать, то можете закомментировать соответствующие строки знаком #).

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Где, 10.0.2.0/24 адрес сети, из которой будет происходить подключение к текущему серверу PostgreSQL. Сохраняем изменения сочетанием клавиш CTRL+O, подтверждаем нажатием Enter и закрываем редактор nano сочетанием клавиш CTRL+X.

Все, установка и настройка PostgreSQL закончена, можете подключаться к серверу из сети клиентским приложением. Пока, надеюсь, материал был Вам полезен!

Источник

Настройка и начало работы с PostgreSQL

Загрузка и установка PostgreSQL

PostgreSQL поддерживает все основные операционные системы. Процесс установки прост, поэтому я постараюсь рассказать о нем как можно быстрее.

EDB больше не предоставляет пакеты для систем GNU/Linux. Вместо этого они рекомендуют вам использовать диспетчер пакетов твоего дистрибутива.

Установщики включают в себя разные компоненты.

Вот самые важные из них:

Windows

Скачав установщик, запусти его как любой другой исполняемый файл. Процесс довольно прямолинеен, но некоторые вещи все же заслуживают внимания.

Диалоговое окно «Выбрать компоненты» позволяет выборочно устанавливать компоненты. Если у тебя нет веской причины что-то менять — оставляй все как есть.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

По умолчанию PostgreSQL создает суперпользователя с именем postgres (воспринимай его как учетную запись администратора сервера базы данных).

Во время установки тебе нужно будет указать пароль для суперпользователя (root).

Позже ты сможешь создать других пользователей и назначать им отдельные доступы и роли. Мы вернемся к этому позже, а сейчас тебе понадобится учетная запись суперпользователя, чтобы начать использовать СУБД.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

После завершения установки ты сможешь запустить SQL Shell, поставляемый с Postgres.

Шаг за шагом ты выберешь сервер, какую базу данных использовать, порт, имя пользователя и пароль.

Используй данные, которые ты вводил на предыдущих шагах.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Поздравляю! Настройка для Windows завершена, и скоро мы начнем писать первые SQL запросы.

Ниже список вариантов установки для других операционных систем.

macOS

Для macOS у тебя есть разные варианты. Можно скачать установщик с сайта EDB и запустить его.

После запуска у тебя появится сервер PostgreSQL, готовый к использованию. Завершить работу сервера можно просто закрыв приложение.

GNU/Linux

Ты можешь найти PostgreSQL в репозиториях большинства дистрибутивов Linux. Установить его можно одним щелчком мыши из выбранного графического диспетчера пакетов.

Альтернативно, можно использовать установку через терминал. Ты можешь обратиться к документации твоего дистрибутива для получения дополнительных сведений.

Ubuntu

Fedora

openSUSE

Запуск оболочки PostgreSQL

После установки PostgreSQL, нужно запустить оболочку(shell), с помощью которой ты получишь возможность управлять базой данных.

Открой терминал и введи:

После этого нужно будет ввести пароль суперпользователя, который ты выбрал во время установки.

Как только пароль установлен, база данных PostgreSQL готова к работе!

Если сервер PostgreSQL по какой-то причине не запускается, можешь попробовать запустить его вручную.

Понимание модели клиент-сервер

Я уже упоминал PostgreSQL Server как важный компонент базы данных. Но что такое сервер в этом контексте и зачем он нам нужен?

Для начала тебе необходимо понимать модель клиент-сервер.

Почти все СУБД (PostgreSQL, MySQL и другие) следуют клиент-серверной модели. В ней база данных находится на сервере, и клиент отправляет запросы на сервер, который их обрабатывает.

как создать пользователя postgresql linux. Смотреть фото как создать пользователя postgresql linux. Смотреть картинку как создать пользователя postgresql linux. Картинка про как создать пользователя postgresql linux. Фото как создать пользователя postgresql linux

Для разработки любого бекэнда, тебе нужен локальный сервер для экспериментов и тестирования. Этот локальный сервер аналогичен удаленному, но работает прямо на твоем компьютере.

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

Некоторые базы данных не используют эту модель, например SQLite, которая хранит все в простом файле на диске. Это хорошо работает для небольших приложений, но для большинства реальных приложений тебе понадобится архитектура клиент-сервер.

Мета-команды PostgreSQL

Теперь, когда ты все настроил и готов приступить к работе с базой данных, осталось разобрать несколько мета-команд. Это не SQL запросы, а команды специфичные для PostgreSQL.

В других системах управления базами данных есть их аналоги, но их синтаксис немного отличается.

Список всех баз данных

Ввод этой мета-команды в оболочке Postgres выведет:

Это список всех имеющихся баз данных и служебная информация, такая как владелец базы данных, кодировка и права доступа.

Тебе пока не стоит беспокоиться о них. Если хочешь изучить все детали, то проверь официальную документацию.

Подключаемся к базе данных PostgreSQL

Некоторые команды SQL требуют, чтобы ты сначала вошел в базу данных (например, для создания новой таблицы). Ты можешь выбрать, в какую базу данных входить, при запуске SQL Shell.

Полностью в терминале у тебя получится что-то такое:

Получить список всех таблиц в базе данных

Перед выполнением этой команды вам необходимо войти в базу данных.

Ты можешь увидеть имя таблицы и некоторую другую информацию, такую как схема (мы обсудим схемы в более сложных руководствах) и владельца.

Владелец (owner) — это пользователь, который создал таблицу.

Если ты создаешь других пользователей и используешь их для создания таблиц, то в последнем столбце будут именно они.

Список пользователей и ролей

Обрати внимание, что первый столбец называется — роль (role name). И весь вывод на экран называется “список ролей” (List of roles), а не список пользователей.

В PostgreSQL пользователи и роли практически одинаковы.

У ролей есть атрибуты, которые определяют их разрешения, такие как создание баз данных или даже создание других новых ролей.

Любая роль с атрибутом LOGIN может рассматриваться, как пользователь.

Здесь мы видим только одну роль, суперпользователя по умолчанию.

В реальном мире все будет иначе, потому что использовать только суперпользователя все время опасно. Вместо этого создают другие роли с меньшими привилегиями. Это гарантирует, что никто не совершит нежелательных действий по ошибке.

Если у одной из ролей есть доступ только на чтение данных, то с помощью этой роли будет невозможно удалить таблицу или поле.

Твой первый SQL оператор

Наконец, мы все настроили и готовы к работе и знаем основные мета-команды, специфичные для PostgreSQL.

Теперь приступим к изучению языка запросов SQL.

Я покажу тебе несколько базовых примеров, чтобы разобраться в структурированном языке запросов и получить представление о SQL. А более подробно мы рассмотрим операции CRUD это в следующей статье.

Создание новой базы данных

Команды и ключевые слова SQL обычно пишутся в верхнем регистре.

На самом деле это не является обязательным требованием, и обычно они нечувствительны к регистру.

То есть ты мог бы написать

И все сработало бы нормально.

Но при написании операторов SQL обычно предпочтительнее прописные буквы. Это хорошая практика, потому что она может помочь тебе визуально отличить ключевые слова SQL от других частей оператора, таких как имена таблиц и столбцов.

Для мета-команд PostgreSQL точка с запятой не нужна.

Создание таблиц

После того как ты создал новую базу данных, можно приступать к созданию таблиц.

Теперь, когда ты подключился к базе данных (обратите внимание, что приглашение оболочки SQL теперь включает имя активной базы данных), ты готов создать свою первую таблицу.

Таблица создается с помощью команды CREATE TABLE, за которой следует список столбцов таблицы и их типы данных в круглых скобках:

После создания таблицы перейдем к добавлению данных.

Вставка данных в таблицы PostgreSQL

Чтобы добавить данные в таблицу, используют команду INSERT INTO следующим образом:

Посмотрим на команду INSERT INTO подробнее:

Выборка данных из SQL таблицы

Теперь, когда ты добавил в таблицу первую запись, ты можешь использовать SQL для получения содержимого таблицы.

Для ситуаций когда ты хочешь выбрать все столбцы которые есть в таблице, ты можешь поставить звездочку вместо списка полей.

Звездочка означает: выбрать все столбцы. Результат останется прежним.

Ты должен обратить внимание на то, как команда SELECT выбирает столбцы и строки. Столбцы указываются в виде списка и разделяются запятыми. Затем команда переходит к выбору запрошенных строк.

Если условия не указаны (как в этом случае), будут выбраны все строки в таблице.

Позже мы увидим, как использовать условия с командой WHERE для создания эффективных запросов.

Обновление данных в PostgreSQL

Представь, что ты запустил свое потрясающее приложение для магазина и получили первый заказ на один из продуктов.

Первое, что нужно сделать — это обновить доступное количество в вашем инвентаре, чтобы в дальнейшем у вас не возникли проблемы с отсутствием товара на складе.

Для обновления данных ты можешь использовать команду UPDATE :

После SET — пишем имена столбцов, которые хотим обновить.

За ними — знак равенства и новое обновленное значение.

Также ты можешь обновить сразу несколько столбцов, разделив их запятыми:

Но стоп, какие строки обновляются этой командой?

Удаление данных из SQL таблицы

Теперь рассмотрим случай, когда ты прекратил продажу определенного продукта и захотел полностью удалить его из своей базы данных.

Для этого можно использовать команду DELETE :

Удаление таблиц в PostgreSQL

Если вдруг ты решил изменить структуру базы и для этого нужно удалить всю таблицу, то тебе подойдет команда DROP TABLE :

Это приведет к удалению всей таблицы products из базы данных.

Я бы не позавидовал тому, кто “случайно” удалит не ту таблицу из базы данных.

Удаление баз данных PostgreSQL

Точно так же ты можешь удалить из системы всю базу данных:

Заключение

Поздравляю, у тебя все получилось!

Ты установил и запустили PostgreSQL. Ты изучил основные команды SQL и проделали с ними несколько интересных вещей.

Эти несколько простых команд — основа, которую ты будешь использовать большую часть времени при взаимодействии с базами данных, поэтому тебе следует пойти и потренироваться и изучить самостоятельно. В следующий раз мы погрузимся глубже и обсудим Базы данных, роли и таблицы в PostgreSQL

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *