2013年9月3日火曜日

PG::Error: ERROR: invalid value for parameter "TimeZone": "UTC"

Rails 備忘録。

今やろうとしている内容が PostgreSQL を使用するものだが、PostgreSQL をインストールせずに rake をかけたら以下エラーが表示される。
$ rake db:create db:migrate db:seed
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?
/Users/xxxx/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/activerecord-…

ここでは、エラー内容をみると、「5432」ポートとか出ているので、PostgreSQLをインストールした事ある人なら、このポート番号でピンと来ると思う。

なので、この問題については PostgreSQL をインストールすればよい。
調べてみると、インストール方法も数種類(Postgres.app/Fink/MacPorts/Homebrew)存在するため、迷ってしまった。

今回は、app を採用。
インストールと言っても、app をダウンロードするだけ(zip→app)。
(アンインストールの時関連ファイル等をキレイに削除できるのか不明)

起動は、app を実行すれば完了らしい
(メニューバーに像のアイコンが出る) 。

この状態で、再度 rake コマンドを発行してみた。
PG::Error: ERROR:  invalid value for parameter "TimeZone": "UTC"
: SET time zone 'UTC'
/Users/xxxx/Program/Rails/passbook_rails_example-master/config/environment.rb:5:in `'
Tasks: TOP => db:migrate => environment
(See full trace by running task with --trace)
またエラーだ。
内容としてはタイムゾーンがどうのこうのらしいが、よく分からない。
対応方法を調べると、Mac の再起動をかけると良いらしい。
う~んと思いながらも、再起動をかけると。。。上手くいった!!

これは、app を使用したからかも知れない。

0 件のコメント:

コメントを投稿