私は RoR の初心者で、次のアプリを heroku にデプロイしようと考えています。最もスムーズな移行のために、開発環境とテスト環境を本番環境と一致させたいと考えています。そのため、システムにpostgresqlをインストールしました。このプロセスはイライラする以上のものであり、私は混乱していません. 私は数え切れないほどのチュートリアルに従ったが役に立たなかった. 多くの人が矛盾する情報を持っているようだ. これが私が知っていることです:
postgresql をインストールするには多くの方法があります。一般的なオプションは、macports、homebrew、fink、Postgresql.app、または enterpriseDB です。前のいずれかをインストールしたら、Rails アプリを作成し、次のいずれかを実行する必要があります。
rails new <app_name> -d postgresql
または、標準の「rails new」を実行してから、gemfile で「sqlite3」を「pg」に変更します。次に、私が正しければ、実際にはコマンドラインで次のようにして独自のデータベースを作成する必要があります。
$ psql
$ CREATE DATABASE your_database_name;
次に、database.yml を編集して、これに近いものに従います。
development:
adapter: postgresql
encoding: unicode
database: <your_database_name>
host: localhost
pool: 5
username: <username>
password:
それが完了したら、すべてがうまくいくはずです。しかし、私は問題を抱えています。上記のプロセスを使用して実際に動作させていますが、どのように動作しているのか混乱しています。これらすべてを機能させるために何時間も試みている間に、macports、homebrew、および postgresql.app をインストールしました。ただし、postgresql.app を実行せずにデータベース (「rake db:migrate」など) と対話しようとすると、次のエラーが発生します。
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 を実行していると思います。その情報を使用して、私は自信を持って macports と postgresql の hombrew インストールをアンインストールします。ただし、そうすると、データベースとやり取りしようとすると次のエラーが発生します。
Library not loaded: /usr/local/lib/libpq.5.4.dylib (LoadError)
Macports を再インストールしても、同じエラーが発生します。次に、自作を再インストールすると、エラーはなくなります。その後、macports を再度アンインストールしますが、すべて問題ありません。postgresql.app と私の自作インストールは何らかの形で相互に依存しているようです。私が正しければ、それぞれがpostgreqlのフルインストールであるため、それらは互いに独立して実行できるはずです。この時点で、私はほとんどアイデアがありません。このプロセスがどのように行われるか、何が起こっているかについてのすべての情報は、非常に高く評価されます。
編集
$ 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