PostgreSQL - це потужна і розширювана система управління базами даних, яка широко використовується в різних середовищах Linux. Коли ми встановлюємо PostgreSQL на Linux, одним із ключових питань є те, де зберігаються самі бази даних.
У Linux-системах, бази даних PostgreSQL зберігаються в спеціальному каталозі, відомому як каталог кластера. Каталог кластера-це директорія, в якій міститься все необхідне для роботи бази даних PostgreSQL, включаючи дані, журнали транзакцій, конфігураційні файли та інші важливі компоненти.
Каталог кластера зазвичай розташовується в директорії /var/lib/postgresql/ на більшості Linux-систем. Усередині цієї директорії створюються окремі піддиректорії для кожного кластера, які мають імена, що відповідають версії PostgreSQL та ідентифікатору кластера.
Важливо відзначити, що доступ до каталогу кластера повинен бути обмежений тільки для привілейованих користувачів, так як неправильне поводження з цими файлами може призвести до втрати даних або некоректної роботи бази даних PostgreSQL.
Розташування файлів PostgreSQL у Linux
Основні файли PostgreSQL розташовані в директорії /var/lib/postgresql. Ця директорія містить каталоги для кожної версії PostgreSQL, встановленої на сервері. Усередині кожного каталогу знаходяться каталоги для кожної окремої бази даних. У цих каталогах зберігаються файли даних, журнали транзакцій, конфігураційні файли та інші пов'язані файли.
Конфігураційний файл PostgreSQL, відомий як postgresql.conf, зазвичай знаходиться в директорії /etc/postgresql/. Даний файл визначає налаштування бази даних, такі як розмір буферів, шляхи до файлів журналу та інші.
Якщо встановлено додаткове розширення, воно може зберігати свої файли в окремій директорії або навіть всередині директорії даних PostgreSQL.
Важливо зазначити, що розташування файлів PostgreSQL може відрізнятися залежно від дистрибутива Linux та способу встановлення PostgreSQL.
Шлях до головного каталогу PostgreSQL
В операційній системі Linux бази даних PostgreSQL зазвичай зберігаються в наступному шляху:
- Директорія установки: / usr / lib / postgresql//
- Конфігураційні файли: /etc/postgresql//
- Каталог даних: / var / lib / postgresql//
- Каталог журналів: / var / log / postgresql/
Варіанти шляхів можуть відрізнятися залежно від розподілу та способу встановлення PostgreSQL.
Каталоги з базами даних зазвичай знаходяться в директорії даних (/var/lib/postgresql//data/). У цій директорії кожна база даних має власний підкаталог.
Зверніть увагу, що доступ до деяких каталогів може бути обмежений без прав адміністратора системи.
Розташування основних конфігураційних файлів PostgreSQL
Основні конфігураційні файли PostgreSQL розташовуються в наступних директоріях:
- / etc/postgresql/ / main : у цій директорії знаходиться файл postgresql.conf, який містить глобальні налаштування PostgreSQL, такі як порт, максимальна кількість з'єднань та розмір буферів.
- /etc/postgresql//main/pg_hba.conf : цей файл задає правила авторизації для підключення до сервера PostgreSQL. Тут визначаються дозволені методи аутентифікації і список IP-адрес, з яких дозволено підключення.
- /etc/postgresql//main/pg_ident.conf: цей файл використовується для зіставлення системних користувачів з іменами PostgreSQL. Це дозволяє налаштувати автентифікацію на основі ідентифікаторів користувачів.
Вкажіть версію PostgreSQL замість У шляху до файлів.
Місце зберігання баз даних PostgreSQL
В операційній системі Linux бази даних PostgreSQL за замовчуванням зберігаються в каталозі /var/lib/postgresql/ . У цьому каталозі кожна база даних має свій власний підкаталог.
Структура каталогу /var / lib / postgresql / зазвичай така:
- /var/lib/postgresql/ version / – каталог, що містить дані для певної встановленої версії PostgreSQL.
- /var/lib/postgresql/version/ main / – каталог, що містить дані для основного кластера PostgreSQL, який створюється за замовчуванням під час встановлення PostgreSQL.
- /var/lib/postgresql/version/main/ base / – каталог, що містить основні файли баз даних PostgreSQL.
- /var/lib/postgresql/version/main/ global / – каталог, що містить загальні системні файли баз даних PostgreSQL.
- /var/lib/postgresql/version/main/ pg_xlog / – каталог, що містить журнали транзакцій баз даних PostgreSQL.
Конкретне розташування баз даних може відрізнятися залежно від конфігурації PostgreSQL. Якщо ви хочете перемістити бази даних в іншу директорію або розділ, вам знадобиться внести відповідні зміни в файли конфігурації PostgreSQL.
Файли журналів та журналів PostgreSQL
PostgreSQL в Linux зберігає журнали та журнали в різних місцях для захисту даних та забезпечення надійності бази даних. Ось кілька найважливіших файлів журналів та журналів:
- Журнал транзакцій (Wal-журнал) - це файл, в який записуються всі зміни, зроблені в базі даних. Журнал транзакцій важливий для відновлення даних після збоїв системи.
- Журнал помилок (log file) - це файл, в якому реєструються всі помилки і попередження, що виникли під час роботи PostgreSQL. Журнал помилок корисний для аналізу проблем та пошуку їх джерела.
- Журнал запитів (query log) - це файл, в який записуються всі виконані запити до бази даних. Журнал запитів корисний для моніторингу продуктивності та аналізу роботи додатків.
- Журнал автовакууму (autovacuum log) - це файл, в якому реєструються дії автоматичного вакуумування, виконуваного PostgreSQL для оптимізації та підтримки бази даних в хорошому стані.
Шлях до файлів журналів та журналів PostgreSQL визначається у файлі конфігурації postgresql.conf . Зазвичай вони знаходяться в підкаталозі pg_log в директорії даних PostgreSQL. Наприклад, в Ubuntu файли журналів і журналів PostgreSQL можуть бути розташовані в /var/lib/postgresql/12/main/pg_log .
Каталог із резервними копіями PostgreSQL
PostgreSQL надає можливість створення резервних копій баз даних для забезпечення їх безпеки і відновлення в разі збоїв.
В операційній системі Linux, за замовчуванням, каталог з резервними копіями PostgreSQL знаходиться в директорії /var/lib/postgresql//main/pg_dump . Тут-це номер версії PostgreSQL, наприклад, "9.6" або "10". Зверніть увагу, що шлях може відрізнятися залежно від конфігурації вашої системи.
У каталозі/var/lib/postgresql//main / pg_dump зберігаються файли з розширенням .sql, що містять структуру та дані баз даних PostgreSQL. Кожен файл зазвичай називається відповідно до назви бази даних і датою створення резервної копії.
Резервні копії PostgreSQL можна створити за допомогою команди pg_dump або інших інструментів, таких як pg_dumpall або pg_basebackup . Процедура створення та відновлення резервних копій детально описана в офіційній документації PostgreSQL.
| Шлях до каталогу з резервними копіями PostgreSQL |
|---|
| /var/lib/postgresql//main/pg_dump |
Розміщення файлів налаштувань користувачів PostgreSQL
PostgreSQL зберігає файли налаштувань користувачів у певних директоріях, які можна знайти в операційній системі Linux. Ось деякі основні шляхи до цих файлів:
| Розташування файлу | Опис |
|---|---|
| /etc/postgresql//main | У цьому каталозі зберігаються файли налаштувань певної версії PostgreSQL. Тут ви можете знайти файл postgresql.conf, де можна змінити глобальні параметри налаштування сервера. |
| /etc/postgresql//main/pg_hba.conf | Цей файл містить налаштування автентифікації та авторизації клієнтів PostgreSQL. У ньому можна визначити, які користувачі є допустимими для підключення до сервера і які методи ідентифікації повинні бути використані. |
| /var/lib/postgresql//main |
Розташування сценаріїв та програм PostgreSQL
В операційних системах на базі Linux, сценарії і програми PostgreSQL зазвичай розташовуються в різних директоріях. Нижче наведено основні шляхи, де можна знайти ці файли:
1. Конфігураційні файли:
Основний конфігураційний файл PostgreSQL, який містить налаштування бази даних, зазвичай розташовується за наступним шляхом:
Додаткові конфігураційні файли можуть знаходитися в директорії:
2. Директорія даних:
Директорія, в якій зберігаються дані бази даних PostgreSQL, зазвичай розташовується за наступним шляхом:
3. Директорія сценаріїв:
Директорія, що містить сценарії і команди для роботи з PostgreSQL, знаходиться за наступним шляхом:
У цій директорії ви знайдете виконувані файли, такі як pg_dump, pg_restore, psql та інші, які дозволяють виконувати різні операції з базою даних.
Імена директорій і шляхи можуть відрізнятися в залежності від конкретної установки операційної системи і версії PostgreSQL, тому рекомендується звернутися до документації вашої системи або до документації PostgreSQL для отримання докладної інформації про розташування файлів.