Установка и настройка Postgres с Django.
Основы работы с Linux. -> Установка и настройка Postgres.
Установка
Ubuntu
sudo apt update
sudo apt install libpq-dev postgresql postgresql-contrib
MacOS
Качаем дистрибутив postgres, запускаем и следуем инструкциям. следуем
Настройка PostgreSQL
Заходим под пользователем postgres
Ubuntu
sudo -u postgres psql
Создаем базу данных sb, набрав такую строку
create database sb;
и нажав Enter
Смена пароля для суперпользователя postgres.
\password postgres
Набираем два раза пароль через Enter.
Добавление нового пользователя под определенную базу данных.
Запускаем такие команды.
CREATE USER myprojectuser WITH PASSWORD 'password';
ALTER ROLE myprojectuser SET client_encoding TO 'utf8';
ALTER ROLE myprojectuser SET default_transaction_isolation TO 'read committed';
ALTER ROLE myprojectuser SET timezone TO 'UTC';
Вместо ‘password’ вставляем свой пароль. read committed - блокирует чтение транзакций, по которым не было коммитов (coхранений изменений).
Предоставляем права к БД.
GRANT ALL PRIVILEGES ON DATABASE myproject TO myprojectuser;
Чтобы выйти из под пользователя обратно в командную строку набираем
\q
и жмем Enter.
Настройка удаленного доступа.
Конфигурируем хост, который будет обслуживать PostgreSQL.
nano /etc/postgresql/14/main/postgresql.conf
Вместо 14 может быть другая версия PosgreSQL.
Меняем
#listen_addresses = 'localhost'
на listen_addresses = ‘*’
Изменим pg_hba.conf добавив настройки подключения для одного или всех внешних IP. Добавляем внизу строку.
host all all 0.0.0.0/0 md5
Рестарт сервера
sudo service postgresql restart
Создание резервной копии
mkdir /backups
chmod 0777 /backups
pg_dump sb > /backups/sb.sql
Восстановление резервной копии
psql dbname < infile
При восстановлении необходимо создать пустую БД.