- Установка и настройка PostgreSQL 13 на Linux Ubuntu Server 20.04
- Установка PostgreSQL 13 на Ubuntu Server 20.04
- Шаг 1 – Подключение репозитория и обновление списка пакетов в системе
- Шаг 2 – Установка необходимых пакетов для PostgreSQL
- Шаг 3 – Проверка установки
- Настройка PostgreSQL 13 в Ubuntu Server 20.04
- Создание пользователя и базы данных в PostgreSQL
- Разрешаем подключение к PostgreSQL по сети
- Видео-инструкция – Установка и настройка PostgreSQL 13 на Ubuntu Server
- Установка и первичная настройка PostgreSQL на Ubuntu 18.04
- Установка PostgreSQL
- Подключение к СУБД
- Подключение PostgreSQL по сети
- Создание ролей
- Создание новой базы данных
- Создание таблицы
- Добавление и удаление данных
- Добавление и удаление столбцов
Установка и настройка PostgreSQL 13 на Linux Ubuntu Server 20.04
Всем привет! Сегодня мы разберем процесс установки PostgreSQL 13 на операционную систему Linux Ubuntu Server 20.04, а также выполним первоначальную настройку PostgreSQL. В результате у нас получится полноценный сервер баз данных, реализованный на базе Ubuntu Server + PostgreSQL, и данный сервер можно будет использовать в сети предприятия.
Установка PostgreSQL 13 на Ubuntu Server 20.04
Итак, давайте перейдем к установке и рассмотрим все шаги, которые необходимо выполнить, чтобы установить PostgreSQL 13 на Ubuntu Server 20.04.
Установку я буду производить удаленно, для подключения к Ubuntu Server буду использовать программу PuTTY.
Заметка! О том, как установить Ubuntu Server, я подробно рассказывал в материале – Установка Linux Ubuntu Server 20.04.
Шаг 1 – Подключение репозитория и обновление списка пакетов в системе
Установку и настройку PostgreSQL необходимо выполнять с правами пользователя root, поэтому давайте сразу переключимся на root.
Для этого пишем команду sudo -i и вводим пароль.
Далее, подключаем репозиторий, который будет содержать актуальную версию PostgreSQL, на текущий момент актуальной версией является PostgreSQL 13, поэтому в данном репозитории хранится именно эта версия, которую мы и будем устанавливать.
Однако, если Вам требуется установить не самую последнюю версию, то на этапе установки пакетов нужно будет указать номер версии в названии пакета, чуть ниже, на соответствующем шаге, я поясню, где именно необходимо указать номер конкретной версии.
Для подключения репозитория вводим следующую команду, которая создает файл в источниках с адресом нужного репозитория.
sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
После этого нам необходимо импортировать ключ подписи репозитория, для этого вводим команду.
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
Осталось обновить список пакетов в системе, это делаем стандартной командой.
И для проверки того, что теперь нам доступны пакеты PostgreSQL 13, давайте запустим команду поиска пакетов.
apt-cache search postgresql-13
Нужные пакеты нам доступны, и мы можем переходить к установке PostgreSQL 13.
Шаг 2 – Установка необходимых пакетов для PostgreSQL
Для установки актуальной версии, т.е. PostgreSQL 13 и базовых стандартных утилит, необходимо установить пакет postgresql, это делается следующей командой.
apt-get -y install postgresql
Чтобы установить какую-то конкретную версию PostgreSQL, необходимо указать номер этой версии в названии пакета, например, для 12 версии необходимо установить пакет postgresql-12.
Шаг 3 – Проверка установки
Чтобы проверить, установился и запущен ли PostgreSQL, давайте выполним следующую команду, которая покажет статус сервиса PostgreSQL.
systemctl status postgresql
Как видим, PostgreSQL 13 установился и работает.
Настройка PostgreSQL 13 в Ubuntu Server 20.04
PostgreSQL у нас установлен, однако на текущий момент им пользоваться пока нельзя, поэтому нам необходимо его настроить, в частности создать пользователя, указать, какие сетевые интерфейсы будет прослушивать сервер, а также разрешить подключения по сети.
Создание пользователя и базы данных в PostgreSQL
После установки к серверу PostgreSQL мы можем подключиться только с помощью системного пользователя postgres, причем без пароля.
Давайте переключимся на пользователя postgres (данная учетная запись была создана автоматически во время установки PostgreSQL).
Затем запускаем утилиту psql – это консоль для PostgreSQL.
Первым делом нам нужно задать пароль для пользователя postgres.
Затем создаем нового пользователя на сервере PostgreSQL, так как работать от имени postgres крайне не рекомендуется.
create user info_comp with password '123456';
где info_comp – это имя пользователя, ‘123456’ – это его пароль, Вы, соответственно, придумываете и подставляете свои данные.
Далее давайте создадим базу данных.
где test_db – это имя новой базы данных.
Теперь давайте дадим права на управление базой данных нашему новому пользователю.
grant all privileges on database test_db to info_comp;
Все готово, выходим из консоли.
Для проверки давайте подключимся к PostgreSQL от имени нового пользователя, на предложение о вводе пароля вводим пароль от новой учетной записи.
psql -h localhost test_db info_comp
Все работает, я подключился. Для выхода снова набираем \q.
Для переключения обратно на root вводим exit.
Разрешаем подключение к PostgreSQL по сети
По умолчанию PostgreSQL прослушивает только адрес localhost, поэтому, для того чтобы мы могли подключаться по сети, нам нужно указать, какие сетевые интерфейсы будет просушивать PostgreSQL. Я для примера укажу, что прослушивать нужно все доступные интерфейсы. Если у Вас несколько сетевых интерфейсов, и Вы хотите, чтобы PostgreSQL использовал только один конкретный, то Вы его можете указать именно здесь.
Чтобы это сделать, открываем файл postgresql.conf, например, редактором nano.
nano /etc/postgresql/13/main/postgresql.conf
#listen_addresses = 'localhost'
и вносим следующие изменения (вместо звездочки Вы в случае необходимости указываете IP адрес нужного интерфейса).
Сохраняем изменения сочетанием клавиш CTRL+O и подтверждаем нажатием Enter, затем просто закрываем редактор nano сочетанием клавиш CTRL+X.
Теперь давайте разрешим подключение из сети, я для примера разрешу подключаться из сети 192.168.0.0/24 с методом аутентификации md5.
Для этого открываем файл pg_hba.conf
nano /etc/postgresql/13/main/pg_hba.conf
И указываем нужную нам сеть (если IPv6 Вы не будете использовать, то можете закомментировать соответствующие строки знаком #).
Далее точно так же сохраняем изменения сочетанием клавиш CTRL+O, подтверждаем нажатием Enter и закрываем редактор nano сочетанием клавиш CTRL+X.
Перезапускаем PostgreSQL, чтобы изменения вступили в силу.
systemctl restart postgresql
Теперь можно подключаться к нашему серверу PostgreSQL удаленно по сети.
Таким образом, мы установили и настроили систему управления базами данных PostgreSQL 13 на операционной системе Ubuntu Server 20.04.
В следующем материале мы рассмотрим процесс установки на клиентский компьютер инструментов для работы с базами данных PostgreSQL и настроим удаленное подключение к PostgreSQL 13.
Видео-инструкция – Установка и настройка PostgreSQL 13 на Ubuntu Server
На сегодня это все, надеюсь, материал был Вам полезен, пока!
Установка и первичная настройка PostgreSQL на Ubuntu 18.04
PostgreSQL – кроссплатформенная СУБД с расширенной функциональностью, и открытым исходным кодом. Она совместима со многими операционными системами. Чтобы установить PostgreSQL на Ubuntu, потребуется уже развернутая операционная система, пользователь с привилегиями sudo и базовый файрвол.
В статье рассмотрим установку, настройку и удаление на Ubuntu PostgreSQL версии 11.1.
Установка PostgreSQL
Установить PostgreSQL можно непосредственно из репозитория Ubuntu. По умолчанию его пакеты уже находятся в операционной системе. Перед установкой нужно сначала выполнить их обновление командой:
Далее следует установка самого ПО совместно с пакетом contrib , в котором содержаться дополнительные инструменты и утилиты:
sudo apt install postgresql postgresql-contrib
Установка PostgreSQL на Ubuntu 18.04 завершена.
Подключение к СУБД
В процессе инсталляции, программа автоматически создает пользователя базы данных с правами администратора – postgres . Войти в СУБД на данный момент можно только через эту учетную запись. Следует добавить созданного пользователя в группу sudo:
usermod -a -G sudo postgres
Установить для него пароль:
Выполнить запуск оболочки программы, можно переключившись на сессию учетной записи. Для этого используется команда:
Ее можно также запустить, не переключая сессию от имени postgres:
Для выхода из командной строки нужно ввести команду:
Подключение PostgreSQL по сети
По умолчанию эта СУБД слушает только localhost (компьютер, на который устанавливается база данных). Чтобы подключиться к ней по сети нужно указать, какие сетевые интерфейсы ей следует прослушивать.
Для этого нужно открыть файл postgresql.conf :
nano /etc/postgresql/10/main/postgresql .conf
#listen_addresses = ’localhost’
Здесь необходимо произвести замену параметра « ’localhost’ » в зависимости от того, сколько интерфейсов нужно прослушивать. Например, если нужна прослушка всего перечня доступных интерфейсов, то вписываем параметры « 000.00.0.0 »:
Если же требуется прослушивать конкретный IP, то нужно вписать именно этот адрес (например — 194.61.0.6 ):
Теперь нужно создать правила авторизации для безопасного подключения. Для этого добавить строку в файле /etc/postgresql/10/main/pg_hba.conf :
host all all 192.168.0.10/32 password
Где вместо 192.168.0.10/32 вписывается адрес (с маской подсети), откуда идет подключение к базе данных.
Выполняется сохранение и перезапуск PostgreSQL:
systemctl restart postgresql
На этом настройка PostgreSQL на Ubuntu закончена.
Создание ролей
Часто для работы с БД возникает необходимость нескольких учетных записей.
Чтобы создать нового пользователя, используется команда createuser . Для работы в интерактивном режиме применяется ключ –interactive . При этом будет запрошено имя новой роли и права суперпользователя.
После того, как выполнен вход в аккаунт под пользователем postgres, нужно создать новую роль:
Если не нужно переключать аккаунты, то предыдущую команду нужно записать так:
sudo -u postgres createuser --interactive
После этого выбирается имя новой учетной записи и задаются такие параметры, как привилегии суперпользователя, разрешение на создание БД и возможность создавать роли:
Enter name of role to add: cloud Shall the new role be a superuser? (y/n) n Shall the new role be a allowed to create databases? (y/n) y Shall the new role be a allowed to create more new roles? n
Если понадобится сделать больше настроек, то с помощью следующей команды можно просмотреть все ключи:
Создание новой базы данных
При создании базы данных, важно не забыть, что она имеет такое же название, как и пользователь под которым происходит авторизация. Ранее была создана роль testuser, значит такое же имя нужно дать и для базы данных. Для этого после авторизации под пользователем postgres, следует ввести команду:
Если не требуется переключение аккаунта, то вводится команда:
$ sudo -u postgres createdb testuser
Создание таблицы
Базовая команда для создания таблицы выглядит так:
CREATE TABLE table_name ( column_name1 col_type (field_lenght) column_constraints, column_name2 col_type (field_lenght), column_name3 col_type (field_lenght) );
Изначально присваивается имя таблице, потом дается название столбцам, указывается их тип, и длина значений.
Посмотреть готовую таблицу можно с помощью команды:
Добавление и удаление данных
Чтобы добавить данные в таблицу применяется команда INSERT INTO. Это можно сделать двумя способами.
INSERT INTO название_таблицы VALUES (1, ’Milk’, 9.99);
Здесь главное не забывать про последовательность столбцов, для правильного введения значения.
В другом способе в команде указываются столбцы:
INSERT INTO название_таблицы (product_no, name, price) VALUES (1, ’Cheese’ 9.99); INSERT INTO название_таблицы (name, price, product_no) VALUES (1, ’Cheese’ 9.99? 1);
Чтобы удалить записи, нужно использовать следующую команду:
DELETE FROM название_таблицы WHERE название_столбца = значение;
После выполнения этой команды, строки в которых будут заданы значения столбцов, удалятся:
DELETE FROM products WHERE price = 10;
Если данные значений не нужно указывать, тогда следует удалить все строки таблицы:
Добавление и удаление столбцов
При добавлении столбцов следует использовать команду:
ALTER TABLE название_таблицы ADD название_нового_столбца тип_столбца;
По завершении команды будет создан новый столбец с заданным названием.
Чтобы его удалить, следует выполнить команду:
ALTER TABLE название_таблицы DROP название_существующего столбца;
Теперь можно приступить к работе с базой данных. Для подключения к ней нужно запустить psql с параметрами:
psql -h localhost testuser_db username
Теперь установка и настройка PostgreSQL на Ubuntu завершена. Можно полноценно взаимодействовать с СУБД: создавать таблицы, делать выборки и хранить информацию.
Чтобы удалить PostgreSQL из Ubuntu, необходимо выполнить последовательность определенных команд:
sudo apt-get --purge remove pgadmin3 sudo apt-get --purge remove postgresgl\* sudo rm -rf /etc/postgresgl sudo rm -rf /etc/postgresgl-common sudo rm -rf /var/lib/postgresgl sudo userdel -r postgres sudo groupdel postgres
Теперь СУБД PostgreSQL удалена из Ubuntu.
Надежный хостинг для сайта. 14 дней — бесплатно!