|
|||||||
Как в Linux запустить локально консоль PostgreSQL от пользователя postgres
Время создания: 08.04.2024 12:43
Текстовые метки: linux, postgresql, postgres, debian, astra, пользователь, консоль, запустить, подключиться, connect, команда, su, sudo, psql, логин, переключиться
Раздел: Компьютер - Программирование - SQL - PostgreSQL
Запись: xintrea/mytetra_syncro/master/base/17125693954otgmglcni/text.html на raw.github.com
|
|||||||
|
|||||||
Если в Debian или Astra Linux не получается запустить консоль psql от unix-пользователя postgres, то надо попробовать выполнить следующие действия. Во-первых, надо внимательно посмотреть, какое сообщение по ошибке показывает команда логина: > sudo -u postgres psql Sorry, user ... is not allowed to execute '/usr/bin/psql' as postgres on ... Если ошибка выглядит именно так, то это означает следующую вещь. С некоторых пор, в Debian, при установке пакета с базой данных PostgreSQL, создается unix-пользователь postgres. У данного пользователя нет пароля. Но переключиться на него можно только из-под пользователя root. А чтобы переключаться от обычного или от какого-то заданного пользователя, необходимо сделать специальные настройки в файле /etc/sudoers. Причина появления вышеприведеной ошибки чаще всего в том, что выполнение команды sudo происходит от обычного пользователя, а не от суперпользователя root. То есть, последовательность команд следующая: > su - ... ввод пароля root ... > cd /tmp > sudo -u postgres psql psql (9.6.7) Зачем в середине нужна команда cd /tmp? Сразу после команды su - пользователь окажется в каталоге /root. А запуск psql создает в текущей директории временный файл. Если psql выполняется от unix-пользователя postgres, то этот пользователь, естественно, не может произвести запись в директорию /root. И поэтому при старте SQL-консоли будет выдаваться ошибка: could not change directory to "/root": Отказано в доступе Чтобы этого не произошло, консоль SQL надо запускать в каталоге, где она сможет создать временный файл. |
|||||||
Так же в этом разделе:
|
|||||||
|
|||||||
|