Завантажити та встановити Postgresql 14 на Linux CentOS/RHEL 8/7 TAR
Колеги всім привіт.
У цій статті ми обговоримо, як встановити сервер бази даних PostgreSQL на Linux із вихідних кодів. На момент написання статті остання версія бази банних PostgreSQL 14.1.
PostgreSQL – це універсальна об'єктно-реляційна система управління базами даних з відкритим вихідним кодом, яка є реальною альтернативою комерційним базам даних. Мова запитів використовує SQL.
Зміст статті:
- Встановлюємо потрібні пакети.
- Створюємо локального користувача на сервері під назвою postgres.
- Створюємо необхідні директорії.
- Завантажуємо архів бази даних.
- Розпаковуємо архів.
- Встановлюємо вихідні файли СУБД.
- Складання PostgreSQL.
- Встановлення бази даних.
- Ініціалізація кластеру бази даних.
- Виправлення файлів конфігурації postgresql.conf та pg_hba.conf.
- Створюємо конфігураційний файл bd_conf.conf.
- Створюємо свій environment для бази даних.
- Запускаємо базу даних.
- Консоль керування базою данних.
КРОК 1. Встановлюємо потрібні пакети.
Перед встановленням необхідно встановити важливі пакети без яких сама установка бази даних буде неможливою.
$. sudo dnf install gcc zlib-devel readline-devel make
КРОК 2. Створюємо локального користувача на сервері під назвою postgres.
Створюємо користувача postgres та встановлюємо йому пароль.
$. sudo useradd postgres
$. sudo passwd postgres
КРОК 3. Створюємо необхідні директорії.
Створюємо директорії там де зберігатиметься субд та база даних.
$. sudo mkdir -p /app/postgresql
$. sudo mkdir -p /app/postgresql/pgdatabase/data
$. sudo mkdir -p /app/postgresql/pgdatabase/log
Поки вистачить, потім ще буде директорія з утилітами для управління базою даних.
Тепер призначимо на кореневу директорію /app нового власника postgres якого ми створили.
chown -R postgres:postgres /app
КРОК 4. Завантажуємо архів бази даних.
Завантажуватимемо архів бази даних на офіційному сайті.
https://ftp.postgresql.org/pub/source
КРОК 5. Розпаковуємо архів.
Усі подальші дії виконуємо з-під користувача postgres.
Після того, як завантажили архів, переносимо його в директорію /app/postgresql.
Тепер починає розпаковувати сам архів.
tar -xvf postgresql-14.1.tar.gz
Після розпакування отримуємо директорію postgresql-14.1.
Змінюємо назву postgresql-14.1 на build. І сам архів тепер можемо вилучити.
mv postgresql-14.1 build
rm postgresql-14.1.tar.gz
КРОК 6. Встановлюємо вихідні файли СУБД.
У директорії /app/postgresql/build виконуємо:
/app/postgresql/build/configure --prefix=/app/postgresql
КРОК 7. Складання PostgreSQL
Збираємо СУБД із вихідних файлів. Процедура збирання займе мін 5.
make world
КРОК 8. Встановлення бази даних.
Після збирання починаємо процес встановлення самої бази даних.
make install-world
КРОК 9. Ініціалізація кластеру бази даних.
Ініціалізація – це процес створення всіх необхідних директорій вже самої бази даних.
/app/postgresql/bin/initdb -D /app/postgresql/pgdatabase/data/ -U postgres -W
У процесі воно запропонує ввести пароль від супер користувача postgres бази даних postgres.
КРОК 10. Виправлення файлів конфігурації postgresql.conf та pg_hba.conf.
postgresql.conf – основний файл конфігурації бази даних.
pg_hba.conf - служить для налаштування доступу до бази даних.
Файли знаходяться в директорії - /app/postgresql/pgdatabase/data
У файлі pg_hba.conf всі параметри закоментуйте та додайте текст нижче:
local all all password
host all all 0.0.0.0/0 password
У файлі postgresql.conf знайдіть параметр include_if_exists і додайте значення bd_conf.conf.
Це означає, що ми доповнюємо основну конфігурацію ще одним файлом конфігурації для своєї зручності додавати параметри або їх змінювати.
КРОК 11. Створюємо конфігураційний файл bd_conf.conf.
Тепер нам потрібно створити цей файл bd_conf.conf і додати до нього мінімальну кількість параметрів, щоб база у нас запустилася без помилок.
Створюємо файл bd_conf.conf у /app/postgresql/pgdatabase/data.
vim bd_conf.conf та вставляємо в нього параметри:
listen_addresses = "*"
logging_collector = on
log_directory = "/app/postgresql/pgdatabase/log"
log_filename = "%Y-%m-%d_%H.%M.log"
log_error_verbosity = VERBOSE
КРОК 12. Створюємо свій environment для бази даних.
У /home/postgres створюємо файл pgsql.env і додаємо до нього текст:
export PGPASSWORD="password"
export PGHOME=/app/postgresql
export LD_LIBRARY_PATH=/app/postgresql/lib
export PGDATA=/app/postgresql/pgdatabase/data
export PATH=$PGHOME/bin:$PGDATA:$PATH
КРОК 13. Запускаємо базу даних.
Застосовуємо щойно створений environment pgsql.env та запускаємо базу утилітою:
pg_ctl start
База стартована успішно.
КРОК 14. Консоль керування базою даних.
Для управління базою даних існує утиліта psql.
psql
ГОТОВО! Postgresql 14.1 встановлений та успішно запущений. Я згоден, що цей спосіб установки не дуже простий, але він дає нам багато можливостей, ніж ми встановили базу за допомогою rpm пакетів.
У наступній статті я вам покажу, як поставити базу даних на автоматичний старт після перезавантаження сервера.
Всім дякую, я сподіваюся, що вам моя стаття хоч чимось допомогла.