好像我已经设置了,我使用postgres我的database.yml,我可以用pgadmin III连接数据库,但是当我尝试使用psql命令测试什么版本时,它说不是识别?知道我应该做什么吗?
我正在使用Windows并使用Ruby on Rails的命令提示符。使用随EnterpriseDB一键安装程序安装的PostgreSQL 9.2。
答案 0 :(得分:39)
假设您使用EnterpriseDB打包的PostgreSQL“一键式”安装程序在Windows上安装了PostgreSQL,psql
并未自动添加到PATH
。这部分是因为当人们安装了多个版本的PostgreSQL时,将其添加到路径可能会造成混淆。
您需要指定psql
的完整显式路径,例如:
"%PROGRAMFILES%\Postgresql\9.2\bin\psql.exe"
或将psql
添加到用户PATH
环境变量,请参阅例如this guide。
答案 1 :(得分:6)
打开命令行
psql --version
如果在上面的行中没有显示psql版本,请按照以下步骤进行操作
(For Windows 7 OS)
Mycomputer->Properties->Advanced System Settings->EnvironmentVariables->Path->Edit->
(Donot remove any existing Path)
添加此
;C:\Program Files\PostgreSQL\9.5\bin;C:\Program Files\PostgreSQL\9.5\lib
然后保存
重新打开命令提示符并重复
psql --version
C:\Users\rumi>psql --version
psql (PostgreSQL) 9.5.0
答案 2 :(得分:3)
这是因为;
和你的psql路径之间不应该有空格,所以它应该像*****;C:\Program Files\PostgreSQL\9.2\bin\
。
如果******
之后有空格;然后它将无法正常工作。实际上,您可以在cmd提示符中键入%PATH%
,并查看环境变量和空间的外观。我为你尝试了两种情况,第一次使用空间时遇到了你提到的相同错误而第二次没有空间工作。
答案 3 :(得分:2)
您需要在用分号分隔的PATH环境变量中设置bin和lib路径:
%PROGRAMFILES%\ PostgreSQL的\ 9.2 \ BIN;%PROGRAMFILES%\ PostgreSQL的\ 9.2 \ lib中