Создание символической ссылки для Postgres

Как разработчик, я часто захожу в мою локальную базу данных, просто чтобы протестировать свое приложение перед тем, как отправлять код.

Однако я нахожу, что каждый раз, когда я хочу получить доступ к Postgres, мне приходится вводить

postgres@ubuntu:~$ /usr/local/pgsql/bin/psql test

, тогда как на моей рабочей машине все, что мне нужно сделать, это набрать

postgres@ubuntu:~$ psql --dbname=test --username=user
[ 1112] Я попытался создать символическую ссылку, которая была успешной, но всякий раз, когда я пытаюсь подключиться к нему с помощью этого ярлыка, я получаю следующее сообщение об ошибке:

psql: could not connect to server: No such file or directory
    Is the server running locally and accepting
    connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

Как мне заставить это работать? В случае, если это что-то меняет, я использую самоскомпилированную версию серии 9.1.x.

РЕДАКТИРОВАТЬ: Теперь я знаю, что это на самом деле не символические ссылки, но я не уверен, как это называется, или я уверен, что уже нашел бы это в Google. По сути, я хочу, чтобы он запускался из оболочки, набрав psql [OPTIONS], например, rvm [OPTIONS] или ruby [OPTIONS].

Я знаю, что есть пакет с именем postgresql-client-common & amp; множество других пакетов Postgres через apt-get, но я бы предпочел не использовать версию apt-get, чтобы я мог обновлять Postgres на лету.

2
задан 28 April 2012 в 09:10

2 ответа

Если это просто вопрос вызова psql напрямую, вам необходимо убедиться, что путь «/ usr / local / pgsql / bin» включен в $ PATH при входе в систему. Часто это связано с настройкой PATH Переменная соответственно в / etc / profile (или ~ / .profile) или если вы используете bash, то это будет / etc / bashrc или ~ / .bashrc.

например.

export PATH = "$ PATH: / usr / local / psql / bin"

Кроме того, команда psql ожидает следующие аргументы; psql < dbname > < & имя пользователя GT; (вы можете использовать --flags, чтобы указать то же самое).

Если вы введете «psql test» - тогда он примет имя пользователя текущего пользователя (как видно по команде whoami).

Надеюсь, это поможет.

0
ответ дан 28 April 2012 в 09:10

Почему бы не использовать псевдоним Linux?

alias psql=/usr/local/pgsql/bin/psql

Чтобы создать постоянный псевдоним, просто поместите эту строку в

~/.bashrc or ~/.bash_profile
0
ответ дан 28 April 2012 в 09:10

Другие вопросы по тегам:

Похожие вопросы: