Перерахування та перемикання баз даних у PostgreSQL
Перерахування та перемикання баз даних у PostgreSQL
PostgreSQL, потужна система об’єктно-реляційних баз даних з відкритим вихідним кодом, пропонує багатий набір інструментів і функцій для ефективного керування базами даних. Незалежно від того, чи ви адміністратор бази даних, чи бекенд-розробник, знання того, як перераховувати та перемикатися між базами даних, є фундаментальним для навігації в середовищах з декількома базами даних.
1. Необхідні умови
Перш ніж почати, переконайтеся, що
PostgreSQL встановлено у вашій системі( доступ доpsql є).
Ви маєте відповідні дозволи (наприклад, суперкористувач або роль з правами на підключення).
Ви можете авторизуватися на сервері PostgreSQL за допомогою дійсного користувача.
2. Перерахування баз даних у PostgreSQL
спосіб 1: Використання мета-команди psql
Запустіть інтерактивний термінал psql і виконайте
Або в розгорнутому вигляді:
Поверне список усіх баз даних:
Name
Owner
Encoding
Collation
Ctype
Access privileges
Спосіб 2: Використання SQL-запиту
Альтернативно, виконайте цей SQL-запит:
Цей запит виключає шаблонні бази даних (template0, template1) і показує бази даних, створені користувачем.
🛠️ Спосіб 3: Командний рядок
Поза psql, з вашого терміналу:
Ви також можете використовувати psql -l:
3. Перемикання баз даних
На відміну від деяких інших СУБД (наприклад, MySQL), PostgreSQL не підтримує перемикання баз даних в межах одного сеансу за допомогою команди типу USE dbname;.
Чому?
PostgreSQL встановлює з’єднання з певною базою даних під час входу в систему. Щоб отримати доступ до іншої бази даних, ви повинні розірвати з’єднання і підключитися знову.
Рекомендований підхід:
Вийдіть з поточного сеансу і перепідключіться до потрібної бази даних:
Потім:
Або безпосередньо:
Приклад:
4. Поради щодо ефективної роботи з декількома базами даних
a. Використовуйте .pgpass для безпарольного перемикання
Створіть файл .pgpass для автоматизації автентифікації:
Переконайтеся, що він має правильні дозволи:
b. Автоматизація за допомогою скриптів оболонки
Створіть скрипт для переліку та перемикання:
#!/bin/bash
echo "Available Databases:"
psql -U postgres -c "\l"
read -p "Enter target DB: " db
psql -U postgres -d "$db"c. Використання змінних оточення
Експортуйте БД та користувача за замовчуванням для швидшого перемикання:


