我刚刚安装了heroku PSQL应用程序(v1.0),我无法使用gem pg“0.1.4”连接我的rails应用程序。我已经将路径PATH =“/ Applications / Postgres.app / Contents / MacOS / bin:$ PATH”添加到我的.profile和我的.bashrc文件中,但似乎没有任何东西允许我只是通过调用“psql”来运行psql。我成功使用“psql -h localhost”。当我选择“psql”时,我得到:
Is the server running locally and accepting
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?
我正在使用山狮。
答案 0 :(得分:12)
仍然非常确定现有的两个答案都回答了错误的问题。作者在标题中提到他在 PATH 时遇到问题,没有连接到他的数据库或配置rails。这就是我遇到的情况,这是我的解决方案。
运行postgres.app并按照postgress.app文档中的指示在我的.bashrc文件中设置 PATH - 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
然后命令“which psql”将返回位于/ Applications /.
中的正确版本此时我感到难过,不得不得到一些额外的帮助。我搜索的那些人也认为这也很奇怪,但他们很快就发现 .bashrc或.profile文件都没有被加载。这很奇怪,我没有看到任何我的其他mac通过狮子跑狮子。
现在终于解决了 - 我不确定这是否合适,但它确实永久性地解决了我的问题。我们发现他们是一个加载到终端的配置文件 - .bash_login 文件。最后,解决方案只是使用.bash_login来获取.bashrc文件。这是编辑.bash_login:
source $HOME/.bashrc
就是这样。
无论如何,我不能说这正是迪戈需要/正在寻找的解决方案,但对我来说绝对是个问题。
答案 1 :(得分:4)
您需要将host:localhost
添加到您在开发环境中使用的任何数据库配置(阅读开发/测试/生产/等):
<强>配置/ 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
答案 2 :(得分:2)
我知道这是一个老问题,但我遇到了同样的问题。问题是文档中存在拼写错误。该应用程序是Postgres93.app,而不是Postgres.app,所以路径应该有Postgres93.app:
PATH="/Applications/Postgres93.app/Contents/MacOS/bin:$PATH"
令人惊讶的是,有多少关于此的帖子,而且错字似乎还没有被注意到。改变这一点就是让psql
和which psql
为我正常工作所需的一切。
答案 3 :(得分:1)
你的PATH可能是错的。要查找psql脚本的PATH(在mac上),请在Applications / Postgres安装中从finder中打开sql shell脚本。这将为您提供有关安装位置的提示。打开一个窗口告诉我它位于这里:/ Library / PostgreSQL /8.4/scripts/runpsql.sh
然后,我通过输入以下内容从终端窗口设置PATH变量:
$ PATH =“/ Library / PostgreSQL / 8.4 / bin:$ PATH”