Обзор
psql — это мощный инструмент для взаимодействия с базами данных PostgreSQL. Он предоставляет не только SQL-команды, но и различные мета-команды (команды, начинающиеся с обратной косой черты), которые упрощают задачи администрирования базы данных.
Основные функции
- Выполнение SQL-запросов
- Управление базами данных и таблицами
- Настройка пользователей и прав доступа
- Выполнение файлов скриптов
- Предоставление интерактивной среды оболочки
Основные опции
Основные опции, которые можно использовать в командной строке psql.
Опции подключения
Опции выполнения команд
Сгенерированная команда:
Комбинируйте команды.
Описание:
`psql` Запускает команду.
Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.
Примеры использования
Различные примеры использования команды psql.
Подключение к базе данных по умолчанию
psql
Подключается к базе данных по умолчанию от имени пользователя системы.
Подключение к конкретной базе данных и пользователю
psql -U myuser -d mydb -W
Подключается к базе данных 'mydb' от имени пользователя 'myuser'. Появится запрос на ввод пароля.
Подключение к удаленному серверу
psql -h db.example.com -p 5432 -U postgres
Подключается к удаленному хосту (db.example.com) на порт 5432 от имени пользователя 'postgres'.
Выполнение одной SQL-команды
psql -U postgres -d postgres -c "SELECT version();"
Выполняет SQL-команду для получения версии базы данных и завершает работу psql.
Выполнение файла SQL-скрипта
psql -U postgres -d mydb -f script.sql
Выполняет SQL-команды из файла script.sql.
Запрос списка баз данных
psql -l
Отображает список всех баз данных на текущем сервере PostgreSQL.
Установка
psql входит в состав клиентского пакета PostgreSQL. В большинстве дистрибутивов Linux клиентские инструменты можно установить отдельно, не устанавливая сервер PostgreSQL.
Debian/Ubuntu
sudo apt update
sudo apt install postgresql-client
Устанавливает клиентские инструменты PostgreSQL с помощью пакетного менеджера apt.
RHEL/CentOS/Fedora
sudo dnf install postgresql
Устанавливает клиентские инструменты PostgreSQL с помощью пакетного менеджера yum или dnf.
Советы и рекомендации
Советы и рекомендации по более эффективному использованию psql.
Основные мета-команды psql
В оболочке psql вы можете выполнять различные задачи, используя команды, начинающиеся с обратной косой черты (\).
- \l: Отобразить список всех баз данных
- \dt: Отобразить список таблиц в текущей базе данных
- \du: Отобразить список всех пользователей (ролей)
- \d <table>: Отобразить информацию о схеме конкретной таблицы
- \q: Выйти из psql
- \?: Отобразить справку по всем мета-командам
Использование переменных окружения
Вы можете упростить команды psql, установив часто используемые параметры подключения в качестве переменных окружения.
- PGHOST: Имя хоста или IP-адрес
- PGPORT: Номер порта
- PGUSER: Имя пользователя
- PGDATABASE: Имя базы данных
- PGPASSWORD: Пароль (не рекомендуется из соображений безопасности, рекомендуется использовать файл .pgpass)
Файл .pgpass
Для безопасного хранения паролей без их отображения в командной строке или переменных окружения рекомендуется использовать файл ~/.pgpass. Этот файл хранит пароли для конкретных хостов, портов, баз данных и имен пользователей, позволяя psql автоматически аутентифицироваться.