среда, 23 апреля 2025 г.

Выполнение команд соединения с базой PostgreSQL из bash скрипта без паролей

Для того что бы иметь возможность из скриптов bash инициировать подключение к базе PostgreSQL необходимо создать файл паролей в директории пользователя, от имени которого будет запускаться скрипт.

Файл паролей создается так:
# touch /home/korolev/.pgpass
# nano /home/korolev/.pgpass

В файле прописать
127.0.0.1:5432:<БД>:<ПОЛЬЗОВАТЕЛЬ>:<ПАРОЛЬ>
Например:
127.0.0.1:5432:cdr:ucdr:passu12345

Изменяем права к файлу:
# chmod 600 /home/korolev/.pgpass
# chown korolev:korolev /home/korolev/.pgpass


Теперь в скрипте bash команду подключения к базе выполняем так:
HOST="localhost"
USER="userdb"
DB="mydb"
psql -h $HOST -U $USER -w -d $DB -c "КОМАНДА SQL"

Комментариев нет:

Отправить комментарий