2015-06-25 12 views
7

heroku addons:create heroku-postgresql:hobby-dev kullanarak bir veritabanı kurduktan sonra, yerel veritabanımı heroku veritabanına taşımaya çalıştım. Bu yüzden ilk önceYerel geliştirme veritabanından Heroku-Django'ya geçirme 1.8

heroku python manage.py migrate'u çalıştırdım. Bundan sonra pg_dump -Fc --no-acl --no-owner -h localhost -U myuser mydb > mydb.dump'u kullanarak yerel veritabanımın döküm dosyasını oluşturdum.

r004 ---restore---> HEROKU_POSTGRESQL_PURPLE 
[0KRunning... 0.00B.. 
[0KAn error occurred and your backup did not finish. 
Please run `heroku pg:backups info r004` for details. 

Ve olsun heroku pg:backups info r004 çalıştıran - aşağıdaki hatayı atar ki dropbox'ınıza benim mydb.dump yüklenen dosya ve sonra benim Heroku veritabanında

heroku pg:backups restore'https://www.dropbox.com/s/xkc8jhav70hgqfd/mydb.dump?' HEROKU_POSTGRESQL_COLOR_URL 

için dökümü yüklemek için aşağıdaki komutu kullanılır Ama -

Database: BACKUP 
Started:  2015-06-25 18:19:37 +0000 
Finished: 2015-06-25 18:19:38 +0000 
Status:  Failed 
Type:  Manual 
Backup Size: 0.00B 
=== Backup Logs 
2015-06-25 18:19:38 +0000: waiting for restore to complete 
2015-06-25 18:19:38 +0000: pg_restore: [archiver] did not find magic string in file header 
2015-06-25 18:19:38 +0000: restore done 
2015-06-25 18:19:38 +0000: waiting for download to complete 
2015-06-25 18:19:38 +0000: download done 

Bu hatanın çevrimiçi ortamda fazla bir bilgisi yok ve sorunun ne olduğunu anlayamıyorum.

+0

Veritabanı ne kadar büyük? –

+0

@ TommasoBarbugli 7.4mb. Ücretsiz bir heroku hesabım var. Veritabanı boyutu çok mu fazla? – WutWut

+0

Sorun aslında tamamen farklı bir yerde olabilir: Dropbox genellikle bu dosyadaki ham dosyayı sunmuyor. Bunun yerine bir indirme sayfası sunuyor. Ham dosyayı almak ve heroku pg: backups ile kullanmak için URL'nin sonuna bir '? Raw = 1 'ekleyin. – Jelko

cevap

16

veritabanı küçük ve şanslı hissediyorsanız bu ben de bu hatayı yaşadım ve benim çözüm biraz farklıydı o

pg_dump --no-acl --no-owner -h localhost -U myuser myd | heroku pg:psql 
+5

Çalıştı. Merak ettiğim ifadenin neden işe yaramadığını merak ediyorum, çünkü heroku docs veritabanını almak için ne önerir? – WutWut

+0

Sen bir hayat koruyucu dostumsun. –

7

yapabilir. Sorun kullanılan formatla ilgili idi. Db'yi dökerken --format = c kullanmam gerekiyordu.

ben Sonra Heroku uygulamasına bu gelecekte birisi yardımcı olur

heroku pg:backups restore 'url_for_db.dump' DATABASE_URL 

Umut aktarmadan

pg_dump --no-acl --no-owner --format=c database_name > db.dump 

c tekrar --format = kullanarak db dampingli çözmek için!

+0

Gerçekten giriş yaptım, böylece sizi ve yorumunuzu yazabilirim. Bu benim pastamı kurtardı ve benim için çözüm oldu. Çok teşekkür ederim!!! – Schwad

+0

"--format = c" eksik olan bu, mükemmel, teşekkür ederim – Radek

1

;

heroku pg:backups:restore "https://s3.amazonaws.com/me/items/3H0q/mydb.dump" DATABASE_URL

resmi dokümanlar göre, pencereler kullanıyorsanız uzaktan url etrafında çift tırnak kullandığınızdan emin olun. see official docs

İlgili konular