sql >> Databáze >  >> RDS >> PostgreSQL

Heroku pg:pull se nepodařilo naplnit schéma

Napsal jsem pg:pull a pg:push příkazy.

pg:pull a pg:push oba používají pg_dump příkaz a potrubí, které přímo do pg_restore (zdrojový kód). Bohužel jsou problémy s pg:push,pull na windows v době této odpovědi, září 2014. Tyto problémy nejsou nepřekonatelné, takže pokud se k této odpovědi dostanete někdy později, zkontrolujte, zda to nebylo opraveno.

env Příkaz použitý zde a zde, nemyslím si, že je na Windows, a proto musíte dělat věci PGUSER a PGPASSWORD. Nicméně důvod pro env je to pg_dump potřebuje jiné proměnné prostředí než pg_restore .

Jednou jsem to vyřešil tak, že jsem pomocí popen nastavil příkazy nezávisle a pak je spojil dohromady namísto použití potrubí. Nicméně se mi to nepodařilo úplně zprovoznit a musel jsem to zastavit.

Byl bych velmi rád, kdybychom zkontrolovali všechny záplaty, které jdou až do konce, a opravím tento problém, stačí mě @ zmínit v žádosti o stažení do projektu heroku/heroku.

Omlouvám se, že se mi nepodařilo tento problém vyřešit :(

Místo toho, a dokud to nebude opraveno, můžete použít pg_dump a pg_restore příkazy samostatně, přímo. Je to těžkopádnější jako dvoukrokový proces a nutnost vyhledávat vzdálené přihlašovací údaje, ale práci by to zvládlo. Propojený zdroj v gen_pg_*_command metody ukazují, jak používat pg_dump a pg_restore .



  1. Android:onUpgrade nevolá při aktualizaci databáze

  2. Jak najít název omezení v Oracle

  3. PostgreSQL CREATE TABLE

  4. Pochopení příkazů PIVOT, UNPIVOT a Reverse PIVOT