私はRoRにはかなり新しいので、私はherokuに次のアプリを配備しようとしています。私は私の開発&のテスト環境を、最もスムーズな移行のための私の生産環境に合わせたいと思っています。そのため、私は自分のシステムにpostgresqlをインストールしました。このプロセスは、イライラさせる以上のものであり、私は混乱しています。無数のチュートリアルに従って無駄になり、多くの人が矛盾する情報を持っているようです。ここに私が知っているものがあります:Postgresql.app vs Homebrew
postgresqlをインストールする方法はたくさんあります。一般的なオプションは、macports、homebrew、fink、Postgresql.app、またはenterpriseDBです。以前のいずれかをインストールしたら、あなたはレールのアプリを作成する必要がありますし、実行し、次のいずれか
rails new <app_name> -d postgresql
をまたは標準を実行して、あなたのgemfileの「PG」に「sqlite3の」を変更し、「新しいレール」と。その後、私は正しいだ場合、あなたが実際にこれを行うことにより、コマンドラインで独自のデータベースを作成する必要があります。
development:
adapter: postgresql
encoding: unicode
database: <your_database_name>
host: localhost
pool: 5
username: <username>
password:
:
その後
$ psql
$ CREATE DATABASE your_database_name;
、これに近いものを追跡するためにあなたのdatabase.ymlを編集
これが完了したら、すべて正常でなければなりません。しかし、私は問題を抱えています。私は実際に上記のプロセスを使って作業していますが、どのように動作しているのか混乱しています。これをすべて動作させようとしている間、私はmacports、homebrew、およびpostgresql.appをインストールしました。しかし、私は(このような「すくいデシベル:移行」など)のデータベースと対話しようとするたびpostgresql.appランニングなしで、私はこのエラーを取得する:私はバックアップそれを発射した場合
could not connect to server: Connection refused
Is the server running on host "localhost" (::1) and accepting
TCP/IP connections on port 5432?
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?
could not connect to server: Connection refused
Is the server running on host "localhost" (fe80::1) and accepting
TCP/IP connections on port 5432?
、すべてが正常です。それで、私のシステムはpostgresql.appを使ってpostresqlを実行していると仮定しています。その情報で、私は自信を持ってmacportをアンインストールし、postgresqlのインストールを強化しました。ただし、データベースとやり取りしようとすると、このエラーが発生します。
Library not loaded: /usr/local/lib/libpq.5.4.dylib (LoadError)
私はmacportsを再インストールしても、同じエラーが発生します。その後、私は自家製のものを再インストールし、エラーは消え去る。私は再びmacportsをアンインストールし、すべてが正常です。それは、postgresql.appと私の自作のインストールは、どういうわけか、お互いに依存しているようです。私が正しいとすれば、それぞれがpostgreqlを完全にインストールしているので、それぞれ独立して動くはずです。私はこの時点でかなりのアイデアから抜け出しています。どのようなことが起こっているのか、このプロセスがどのように行われているかについてのすべての入力は、非常に高く評価されます。
EDIT
$ which psql
示す:
/usr/local/bin/psql
と
ls -l /usr/local/bin/psql
示す:
lrwxr-xr-x 1 robertquinn admin 35 Jul 29 17:32 /usr/local/bin/psql -> ../Cellar/postgresql/9.1.4/bin/psql
私の推測では、あなたのPostgresサーバがpostgres.appの下で実行されている私は私の
.profile
ファイルにこれらのコマンドを追加して、起動と停止postgresのを容易にするために、しかし、あなたのコマンドライン・パスは、自作の実行ファイルを指しています? 'どのpsql'が表示されますか?そして、 'ls -l'そのパス – house9が編集で追加されました – flyingarmadillo
Cellarは自家製のインストール先です。あなたのパスにpostgres.appを追加しようとすることができます。http://postgresapp.com/documentation – house9