我正在尝试在heroku上部署一个我用RoR创建的简单博客用于学习目的,并且不支持sqlite3,所以我决定迁移到PostgreSQL。
我更改了我的database.yml文件
development:
adapter: postgresql
encoding: utf8
database: blog_development
pool: 5
username: user
password:
test:
adapter: postgresql
encoding: utf8
database: blog_test
pool: 5
username: user
password:
使用以下命令安装PostgreSQL:
brew install postgresql
删除了sqlite3并添加了:
gem 'pg'
并运行bundle install
当我尝试跑步时:
rake db:create
我得到了:
could not connect to server: Connection refused
Is the server running on host "localhost" (127.0.0.1) and accepting
TCP/IP connections on port 5432?
我尝试用以下方法修复它:
In Rails, Couldn't create database for {"adapter"=>"postgresql",
和
http://russbrooks.com/2010/11/25/install-postgresql-9-on-os-x
http://www.mozmorris.com/2011/11/15/configure-postgresql-to-accept-tcpip-connections.html
ADDL。的信息:
RoR:4.0
Ruby:2.0.0
psql:9.3.1
pg:'0.17.0'
OS:OSX Mavericks
答案 0 :(得分:2)
确保postgres正在运行
首先使用自制软件安装postgres(您已经完成)
brew install postgresql
第二:创建一个新的PostgreSQL数据库集群
initdb /usr/local/var/postgres
最后:启动postgresql
pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
答案 1 :(得分:1)
也许“用户”用户不存在。 在命令行上,试试这个:
psql
psql=# create user name_here;
psql=# alter user name_here superuser;
psql=# \q