Jak na tytuł muszę zaimportować, ale kopie PG dają mi surowy Postgres SQL, który nie działa z MySQL, także z nieokreślonym kodowaniem, które jak sądzę jest UTF-16. Używanie db: pull trwa wieki i błędy przed zakończeniem. Byłbym wdzięczny za wszelkie sugestie. Dzięki.Jak zaimportować dużą bazę danych z Heroku do lokalnego mysql lub sqlite3?
Odpowiedz
Skonfiguruj PostgreSQL lokalnie, użyj PG backups, aby skopiować dane z Heroku na lokalny komputer, a następnie pg_restore
, aby zaimportować go do nowego lokalnego PostgreSQL. Następnie możesz skopiować go z PostgreSQL do MySQL lub SQLite lokalnie, nie martwiąc się o limity czasu. Lub, skoro później będziesz miał funkcjonalną instalację PostgreSQL, zacznij rozwijać się na bazie PostgreSQL, aby twój stos programistyczny lepiej pasował do stosu; rozwijanie i wdrażanie na tej samej bazie danych jest dobrym pomysłem.
Prawdopodobnie otrzymujesz zrzuty binarne (to jest pg_dump -Fc
) z Heroku, co wyjaśniałoby, dlaczego zrzut wygląda jak bzdury UTF-16.
Można użyć pgbackups addon wyeksportować zrzutu bazy danych
$ heroku addons:add pgbackups # To install the addon
$ curl -o latest.dump `heroku pgbackups:url` # To download a dump
Cześć mu, dziękuję, ale instalowanie PG do opracowania jest tym, czego chciałem uniknąć. Może być użyteczne posiadanie tego samego DB w dev, ale dla większości projektów, to po prostu nie warto, trzymałbym się z SQLite3. – aledalgrande
W końcu skończyłem instalowanie PG (lub możesz użyć tego dostarczonego z Lwem). Proces był następujący: * Stwórz użytkownika PG * przywróć zrzut za pomocą pg_restore * zainstaluj ** pg ** i ** stuknij ** klejnoty * uruchom serwer kranów na postgresie: 'taps server postgres: // root @ localhost/rcp_dev tapspróbtowe hasło :: * Wyciągnij dane do sqlite3 (to samo dla mysql): 'taps pull sqlite: //db/development.sqlite3 http: // tapsuser: tapspassword @ localhost: 5000' – aledalgrande
@aledalgrande: Rozwój na PostgreSQL jest absolutnie wart tego, jeśli wdrażasz Heroku. Wszystkie bazy danych mają subtelne i niezbyt subtelne różnice (GROUP BY, rozróżnianie wielkości liter, wartości logiczne, dostępność funkcji, typy danych, wymagania dotyczące rzutowania, skracanie lub zgłaszanie wyjątku, ...) i żadna metoda ORM nie chroni przed nimi wszystkimi. Oszczędź sobie żalu, rozwiniesz i rozmieścisz na tym samym stosie. –
Heroku ma instrukcje jak to zrobić: https://devcenter.heroku.com/articles/heroku-postgres-import-export#restore-to-local-database, które sprowadzają się do:
$ pg_restore --verbose --clean --no-acl --no-owner -h localhost -U myuser -d mydb latest.dump
gdzie myuser
jest obecny użytkownik i mydb
jest bieżącą bazą danych.
Jeśli używasz Postgres.app, kopiowanie bazy danych produkcji lokalnie jest dość trywialne. Można pominąć -U myuser
chyba że skonfigurowano go inaczej, i utworzyć bazę danych, uruchamiając $ psql -h localhost
a następnie CREATE DATABASE your_database_name;
(od Postgres.app documentation. Następnie należy uruchomić powyższą komendę i jesteś ustawiony.
Śledź tych 4 prostych kroków w terminalu
(Heroku Dev Center):
Zainstaluj narzędzie Kopia zapasowa Heroku:
$ heroku addons:add pgbackups
zacząć go używać:
$ heroku pgbackups:capture
pobierania zdalnego db na Heroku (na lokalnym komputerze) za pomocą curl:
$ curl -o latest.dump 'heroku pg:backups public-url'
załadować go *:
$ pg_restore --verbose --clean --no-acl --no-owner -h localhost -U YOUR_USERNAME -d DATABASE_NAME latest.dump
- dostać swoją nazwę użytkownika i wybrać żądana baza danych z pliku config/database.yml.
- DATABASE_NAME może być twój rozwój/test/produkcja db (Ex. Mydb_development)
To jest to!
UPDATE: To jest aktualizowany do nowego interfejsu
- 1. Jak ściągnąć bazę danych mysql z Heroku na lokalną maszynę
- 2. Jak wdrożyć lokalną bazę danych MySQL do Heroku
- 3. Jak zaimportować bazę danych mySQL bez tworzenia nowej
- 4. Heroku - Jak zaszyfrować bazę danych?
- 5. Jak skonfigurować bazę danych dla aplikacji Django na Heroku?
- 6. Jak usunąć bazę danych postgres z heroku
- 7. zaprojektować bardzo dużą bazę danych do wyszukiwania tekstu
- 8. Jak zrzucić bazę danych mysql?
- 9. Jak upuścić bazę danych w heroku clearDB?
- 10. Migrowanie bazy danych z lokalnego rozwoju do Heroku-Django 1.8
- 11. Otwórz bazę danych i wyświetl tabele w sqlite3?
- 12. Importowanie dużą csv do bazy danych mysql
- 13. Nie można zaimportować do bazy danych postgres heroku z dumpa
- 14. Jak wyeksportować i zaimportować bazę danych mysql za pomocą danych za pomocą skryptu php?
- 15. Jak odczytać bazę danych sqlite3, używając węzła js, synchronicznie?
- 16. Jak skonfigurować bazę danych MongoDB na Heroku z MongoLab?
- 17. Połącz bazę danych MySQL z kilkoma domenami
- 18. Jak mogę zaimportować dane do bazy danych mysql za pośrednictwem środowiska roboczego mysql?
- 19. Jak zaimportować plik Excela do bazy danych MySQL
- 20. Jak zaimportować dane XBRL do MySQL?
- 21. Dostosuj istniejącą bazę danych do aplikacji django
- 22. Zdalna baza danych mysql na aplikacji Heroku
- 23. Git: Eksportuj bazę danych MySQL przy zatwierdzaniu?
- 24. Jak odzyskać/odtworzyć domyślną bazę danych mysql mysql
- 25. Jak mogę zaimportować moduł sqlite3 do Python 2.4?
- 26. Jak odkurzać bazę danych sqlite?
- 27. Jak zaimportować MYSQL Dump do Amazon RDS
- 28. Jak importować istniejącą bazę danych do zagrody?
- 29. Rozmieszczanie aplikacji RoR do Heroku z Sqlite3 kończy się niepowodzeniem
- 30. Jak zaimportować dużą liczbę repozytoriów do bitbucket łatwo?
Mam podobny issue- jak dostać kopię zapasową * * bez instalowania PG lokalnie. Możesz edytować swoje pytanie, aby je uwzględnić (tak jak w komentarzu poniżej). –