
PostgreSQL это свободная объектно-реляционная система управления базами данных, способная конкурировать с проприетарными базами данных, такими как Microsoft SQL Server или Oracle. PostgreSQL поддерживает пользовательские данные, функции, операции, домены и индексы. В этой статье мы рассмотрим установку и краткий обзор управления базами данных PostgreSQL. Мы установим PostgreSQL на компьютер с Windows 10, создадим новую базу данных, добавим таблицы и предоставим права доступа пользователям. Также мы покажем, как управлять PostgreSQL с помощью оболочки SQL и визуального инструмента PgAdmin. Надеюсь, эта статья станет хорошей отправной точкой для изучения PostgreSQL и использования его в разработке или тестовых проектах.
Как установить PostgreSQL на Windows 10
Чтобы установить PostgreSQL, перейдите по ссылке https://www.postgresql.org и загрузите последнюю версию дистрибутива для Windows. Сегодня это PostgreSQL 14 (он поддерживает только 64-битные версии Windows). Затем запустите программу установки.
Во время установки проверьте следующие параметры:
- PostgreSQL Server — сервер баз данных;
- PgAdmin 4 — визуальный редактор SQL;
- Построитель стеков — дополнительные инструменты разработчика (они могут понадобиться вам позже);
- Инструменты командной строки.
Установите пароль для postgres пользователя (он создается по умолчанию и имеет привилегии суперпользователя).
По умолчанию экземпляр базы данных PostgreSQL прослушивает порт TCP 5432. Вы должны добавить его в список исключений вашего брандмауэра.
Нажмите кнопку Далее, Далее, и установка PostgreSQL будет завершена.
Включение удаленного доступа к базе данных PostgreSQL
Чтобы разрешить сетевой доступ к экземпляру PostgreSQL с удаленных компьютеров, необходимо создать правила брандмауэра. Вы можете создать правило с помощью командной строки или PowerShell.
Запустите командную строку от имени администратора. Введите приведенную ниже команду:
netsh advfirewall firewall add rule name="PostgreSQL" dir=in action=allow protocol=TCP localport=5432
- где название правила имя правила
- локальный порт номер разрешенного порта
Или вы можете создать правило брандмауэра, разрешающее доступ к экземпляру PostgreSQL через порт 5432 с помощью PowerShell:
New-NetFirewallRule -Name 'POSTGRESQL-In-TCP' -DisplayName 'PostgreSQL (TCP-In)' -Direction Inbound -Enabled True -Protocol TCP -LocalPort 5432
После применения команды в брандмауэре Microsoft Defender появится новое входящее правило для порта PostgreSQL.
Измените значение в port = 5432
. Затем перезапустите службу сервера postgresql-x64-14. Вы можете перезапустить службу с помощью PowerShell:
Restart-Service -Name postgresql-x64-14
Вы можете настроить параметры PostgreSQL в файле postgresql.conf с помощью тюнеров.
Управление базой данных PostgreSQL из командной строки
Рассмотрим, как управлять PostgreSQL с помощью инструментов командной строки. Основные инструменты управления PostgreSQL находятся в разделе bin папку, поэтому все команды мы будем запускать из этого каталога.
Запустите командную строку и перейдите в каталог bin:
CD "C:\Program Files\PostgreSQL\14\bin"
Основные команды PostgreSQL:
- Проверьте версию PostrgreSQL:
psql –V
- Используйте созданныйb команда для создания новой базы данных:
createdb -U postgres testdb
(где postgres является суперпользователем, testdb это имя новой базы данных). Введите пароль суперпользователя; - Чтобы просмотреть список активных баз данных:
Psql -U postgres –l
(пароль) - Создайте нового пользователя:
createuser –U postgres myuser1
(где myuser1 это новое имя пользователя); - Предоставьте привилегии суперпользователя новому пользователю (не делайте этого в производственном развертывании). Запустите интерактивную оболочку управления PostgreSQL:
psql –U postgres
. Предоставьте привилегии:ALTER ROLE operator SUPERUSER CREATEROLE CREATEDB;
Теперь ваш пользователь может создавать роли и базы данных; - Чтобы отобразить список пользователей и ролей в PostgreSQL, выполните команду:
\du
PgAdmin: Графический редактор PostgreSQL
PgAdmin облегчает управление базой данных PostgreSQL в интуитивно понятном визуальном режиме.
Чтобы запустить редактор, выберите PgAdmin 4 в меню Пуск и введите пароль postgres (суперпользователя).
Разверните список активных баз данных в окне Серверы панель.
Вы можете быстро создать нового пользователя или группу и предоставить им некоторые привилегии. Для этого откройте Объект -> Создать -> Создать логин/группу.
Чтобы создать новую базу данных, просто выберите Database в Object -> Create. Введите имя базы данных и владельца.
По умолчанию все базы данных PostgreSQL хранятся в база каталог, расположенный в C:\Program Files\PostgreSQL\14\data\base.
Внутри каждой базы данных есть подкаталог PGDATA/base , названный по OID базы данных в pg_database. По умолчанию файлы базы данных хранятся в подкаталоге. Каждая таблица и индекс хранятся в отдельном файле.
Для резервного копирования и восстановления базы данных лучше использовать программу Резервное копирование опция в Инструменты меню. Чтобы автоматически создавать резервные копии PostgreSQL, воспользуйтесь командой pg_dump.exe в командной строке.
Использование инструмента запросов PostgreSQL
Для создания SQL-запросов в графическом редакторе pgAdmin имеет встроенный Query Tool. Например, вы хотите создать новую таблицу в базе данных с помощью Query Tool.
- Выберите базу данных и откройте Query Tool в меню Tools.
- Создайте таблицу сотрудников:
CREATE TABLE employee
(
Id SERIAL PRIMARY KEY,
FirstName CHARACTER VARYING(30),
LastName CHARACTER VARYING(30),
Email CHARACTER VARYING(30),
Age INTEGER
);Id
это количество сотрудников, которым присвоен ключ SERIAL. Это поле содержит числовое значение (1, 2, 3 и т. д.), которое увеличивается на единицу с каждой новой строкой. Следующие поля содержат имя и фамилию сотрудника, его адрес электронной почты и имеют тип CHARACTER VARYING(30) (не более 30 символов). АдресAge
содержит возраст сотрудника и имеет тип INTEGER, поскольку в нем хранятся числа. - После того как вы написали код SQL-запроса в Query Tool, нажмите кнопку F5, и в базе данных будет создана новая таблица (employee);
- Чтобы заполнить поля таблицы, выберите таблицу сотрудников в Схемы -> Таблицы. В меню Объект выберите Просмотр/редактирование данных. Здесь вы можете заполнить данные в таблице;
- Затем выполните простой SQL-запрос select с помощью инструмента Query Tool:
select Age from employee;