使用postgres.app迁移到使用现有rails应用程序的postgresql

时间:2012-08-15 18:35:59

标签: ruby-on-rails database ruby-on-rails-3 postgresql heroku

我一直在使用默认的sqlite3,但是因为我最终想使用postgres进行部署,我认为最好在我的开发环境中进行尝试,而不是将自己投入到未经测试的生产中。

几点 a)一旦我运行了pg.app,怎么测试呢? b)在我的config / database.yml文件中

development:
  adapter: postgresql
  encoding: unicode
  database: 
  pool: 5
  username:
  password:

我怎么知道我的数据库的默认名称是什么,以及如何设置用户,这是否必要?

最后,当我检查

which psql

我被告知

/usr/bin/psql

我认为这个PATH是不正确的,我需要修改它,是这样的,如果是这样,为什么?

我确信这相对简单,但要提前感谢您提供的任何帮助。

编辑1:

在我的错误谷歌搜索和先前的尝试期间,我向这个章节提出了类似的错误 Repairing Postgresql after upgrading to OSX 10.7 Lion 并且认为尽管他正在使用自制软件,但这可能是一个类似的问题?

编辑2:

我的.bash_profile文件

[[-s“$ HOME / .rvm / scripts / rvm”]]&& 。 “$ HOME / .rvm / scripts / rvm”#Load RVM功能 export PATH = / usr / local / bin:$ PATH

1 个答案:

答案 0 :(得分:3)

要使postgres.app启动并运行,您需要执行一些操作。看起来你正在使用Mac OS X /usr/bin/psql的默认postgres安装,这很好,因为它很容易修复。

主要操作是确保在postgres.app中设置了PATH的路径。您的.profile.bashrc.zshrc(无论您使用哪个)都应在路径的开头附加以下内容。

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

这将确保postgres.app优先于任何其他安装使用,方法是将其添加到当前路径。你不应该需要任何其他配置,

第二个操作是设置database.ymlPostgres.app预先配置了您的本地Mac用户名,因此您无需为了工作而添加或更改它。您也不需要在database.yml中指定它。开发应该使用以下内容:

development:
  adapter: postgresql
  host: localhost
  encoding: unicode
  database: appname_development

Postgres.app将自动创建第一次迁移数据库时指定的数据库。您的数据库名称取决于您,但约定为application_name下划线environment