2012-07-26 65 views
10

我剛剛安裝了heroku PSQL應用程序(v1.0),我無法使用gem pg「0.1.4」連接我的導軌應用程序。我已經將路徑PATH =「/ Applications/Postgres.app/Contents/MacOS/bin:$ PATH」添加到我的.profile和我的.bashrc文件中,但似乎只允許我通過調用「psql」來運行psql。我使用「psql -h localhost」成功了。當我去「psql」我得到:如何設置heroku postgresql應用程序的路徑?

Is the server running locally and accepting 
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"? 

我使用山獅。

+0

我有完全相同的問題,我一直在努力幾個小時 – Emmanuel 2012-07-27 12:56:31

+0

同樣的問題 - 路徑無法正常工作。我的.bashrc與Diego有相同的PATH,並且沒有被加載。如果我運行「source.bashrc」,那麼「哪個psql」會返回正確的版本「/Applications/Postgres.app/Contents/MacOS/bin/psql」,但是如果我啓動一個新的終端窗口,它會返回:「/ usr/bin/psql「 這裏的交易是什麼?該應用程序安裝正確,可以使用,但不會從PATH加載。 – Nick 2012-09-10 22:57:13

+0

這是問題嗎? http://nextmarvel.net/blog/2011/09/brew-install-postgresql-on-os-x-lion/ – pd40 2012-09-13 01:56:18

回答

4

你需要添加host:localhost給你使用在你的開發環境中的任何數據庫配置(讀開發/測試/生產/等):

的config/database.yml的

development: 
    adapter: postgresql 
    encoding: unicode 
    database: my_awesome_app_development 
    pool: 5 
    host: localhost 
    username: my_awesome_app_development 
    password: 

編輯:另見Repairing Postgresql after upgrading to OSX 10.7 Lion

+0

他正在尋找有關postgres.app PATH設置的幫助,未配置Rails應用程序。 – Nick 2012-09-10 23:10:54

+0

@尼克:不,他不是。前端無法找到unix域的postgres-socket,它充當* rendez-vous *點。這是與OSX相關的安裝問題。 (有幾個這樣的) – wildplasser 2012-09-10 23:26:41

+0

我得到與OP相同的錯誤,並且硬編碼主機,就像在這個答案中一樣,確實解決了我的問題。另一方面,我需要一個不需要我這樣做的解決方案,因爲這是工作開發環境的設置方式,所以我正在尋找替代方案。我嘗試在'.bash_profile'中設置'PGHOST = locahost',我發現它在某些情況下工作... – 2013-02-28 04:15:02

12

還是很確定現有的兩個答案都回答了錯誤的問題。作者在標題中提到他正在與PATH發生問題,但沒有連接到他的數據庫或配置導軌。這是我遇到的情況,這是我的解決方案。

越來越postgres.app運行和設置PATH在我的.bashrc文件指示postgress.app文檔中後 - http://postgresapp.com/documentation

PATH="/Applications/Postgres.app/Contents/MacOS/bin:$PATH" 

的問題是,經過這條道路設置不生效重新啓動terminal.app - 運行哪個psql返回「/ usr/bin/psql」中的副本,這是與Lion和Mountain Lion一起安裝的副本,而不是安裝在「/ Applications /」中的新版本。它甚至在Postgres.app說明中說:「運行哪個psql來告訴你正在加載正確的版本」。

反正 - 我發現奇怪的是,之後我跑:

source .bashrc 

然後命令「這PSQL」將返回位於/應用正確的版本/。

在這一點上,我被困住了,不得不得到一些額外的幫助。我竊聽的人也認爲這很奇怪,但是他們很快發現既沒有加載.bashrc文件,也沒有加載.profile文件。這很奇怪,我沒有在我的其他任何通過獅子運行豹的Mac上看到這個。

現在終於解決方案-我不知道這是否正確,但它確實永久解決了我的問題。我們發現他們是一個正在加載到終端的配置文件 - .bash_login文件。最後,解決方案只是使用.bash_login來源.bashrc文件。下面是編輯到.bash_login文件:

source $HOME/.bashrc 

這做到了。

無論如何,我不能說這正是迭戈需要/正在尋找的解決方案,但這絕對是我的問題。

+0

您也可以只添加PATH =「/ Applications/Postgres.app/Contents/MacOS/bin: $ PATH「改爲.bash_login。 – michael 2012-12-14 20:27:46

+1

或.bash_profile,每當你重新啓動控制檯時重新加載 – 2013-02-28 04:12:28

+0

如果你知道你在做什麼,只需在你的bash路徑中添加'/ Applications/Postgres.app/Contents/MacOS/bin' – lavoy 2013-05-07 16:12:10

1

您的PATH可能是錯誤的。要找出psql腳本的路徑(在mac上),請在Applications/Postgres安裝中從您的查找器中打開sql shell腳本。這會給你一個暗示安裝位置的提示。這其中開告訴我它位於這裏的窗口:/Library/PostgreSQL/8.4/scripts/runpsql.sh

然後,我通過鍵入設置從終端窗口PATH變量:
$ PATH =「/庫/PostgreSQL/8.4/bin:$PATH「

2

我知道這是一個老問題,但我只是有同樣的問題。問題在於文檔中存在拼寫錯誤。該應用程序是Postgres93.app,不Postgres.app,所以路徑應該有Postgres93.app:

PATH="/Applications/Postgres93.app/Contents/MacOS/bin:$PATH"

令人驚訝的是很多帖子有這件事,錯字似乎並沒有受到關注然而。改變這一切只需要psqlwhich psql爲我正確工作。

+0

謝謝!那樣做了。 – 2014-02-13 13:55:11

相關問題