0

Heroku を使用してプッシュできないようです。heroku db:pull は正常に動作します、heroku db:push は動作しません


Taps サーバー エラー: PGError: エラー: タイム ゾーンの変位が範囲外です

私の宝石ファイル

source 'https://rubygems.org'

gem 'rails', '3.2.11'
gem 'jquery-rails'
gem 'kaminari'
gem 'bootstrap-kaminari-views'

gem 'devise'

gem 'pg'

gem 'rmagick'
gem 'carrierwave'
gem 'fog', '~> 1.3.1'

group :development do
  gem 'taps'
  gem 'sequel'
  gem 'sqlite3'
  gem 'pry'
end

group :assets do
  gem 'bootstrap-sass', '~> 2.2.1.1'
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'
  gem 'uglifier', '>= 1.0.3'
end

を使用しruby-1.9.3-p327ています。また、rvm を使用してインストールしようとruby-1.9.2-p318しましたが、どちらも機能しません。以前と同じタイム ゾーン エラーがあります。


また、heroku の pgbackupsを使用してローカル データベースをダンプし、それを s3 にアップロードしてから、そこから heroku に復元しようとしましたが、役に立ちませんでした。


私がpgbackupsに使用したコマンドは

PGPASSWORD=mypassword pg_dump -Fc --no-acl --no-owner -h localhost -U myuser mydb > mydb.dump

次に、それをs3バケットにコピーして公開

し、s3からheroku dbに復元しました

heroku pgbackups:restore DATABASE 'https://s3.amazonaws.com/my_bucket/my_db.dump'

ここにpgbackupsからのエラーがあります

2013-01-23T19:19:23+00:00 app[pgbackups]: psql: bin//psql-9.2.1-64bit
2013-01-23T19:19:23+00:00 app[pgbackups]: pv: bin//pv-1.1.4-64bit
2013-01-23T19:19:23+00:00 app[pgbackups]:       SELECT count(*) = 0 as is_empty
2013-01-23T19:19:23+00:00 app[pgbackups]:       FROM pg_class INNER JOIN pg_roles ON relowner = pg_roles.oid
2013-01-23T19:19:23+00:00 app[pgbackups]:       WHERE rolname <> '\''postgres'\'''
2013-01-23T19:19:44+00:00 app[pgbackups]: psql-9.2.1-64bit: could not connect to server: Connection timed out
4

2 に答える 2

0

heroku-toolbelt を削除した後、ruby-1.9.2-p318 を使用して動作するようになりました

これが私がやったことです(Ubuntu 12.04)


1.heroku ツールベルトを削除する

sudo rm -rf /usr/local/heroku
sudo rm -rf /usr/bin/heroku

2. gemfile を更新する

タップにrequire falseを追加しました

group :development do
  gem 'taps', :require => false
end

また、まだ gemfile にない場合は heroku gem を追加します。

gem 'heroku'

3. ruby​​ 1.9.2 と gems をインストールする

アプリ (cd ~/sites/myapp) に移動して実行します。

rvm install ruby-1.9.2-p318
rvm use ruby-1.9.2-p318
bundle install
gem install rb-readline

これで、heroku gem がインストールされているはずです。

再確認するには、コンソールでこれを実行し
ls ~/.rvm/gems/ruby-1.9.2-p318/gems
ます。バージョンが追加された heroku というフォルダーが表示されます。例えば。heroku-2.26.3


4. そのプッシュを再度実行します

これで、まだ app フォルダー (~/sites/myapp)

にあるはずです。インストールしたばかりの heroku gem を使用してプッシュを試してください。別のバージョンをダウンロードした場合は、忘れずにバージョンを変更してください。

~/.rvm/gems/ruby-1.9.2-p318/gems/heroku-2.26.3/bin/heroku db:push

rake db:migrate を使用するには、ruby 1.9.3 に戻す必要があるようです。rake db:migrate を

使用したときにエラーが発生しました

You're running a version of ruby with no Readline support
Please `gem install rb-readline` or recompile ruby --with-readline.


rvm use ruby-1.9.3-p327


そして、あなたはあなたの道を進んでいるはずです!

于 2013-01-23T21:11:21.987 に答える
0

この議論を見てみましょう: https://github.com/ricardochimal/taps/issues/93

于 2013-01-23T20:52:41.727 に答える