Как использовать pg_dump без использования инструментов Heroku?
Я хочу использовать pg_dump в многосхемном приложении pgSQL от Heroku с использованием самоцвета квартиры, но боюсь, что у меня слишком много схем, чтобы это работало.
Я посмотрел в него и нашел следующее от создателя жемчужины квартиры по следующей ссылке
Я автор жемчужины квартиры, на которую здесь ссылаются. Мы используем его более года на Heroku, и он использует схемы.
Это определенно хорошо для использования, мы все еще получаем отличную производительность с более чем 100 схемами в приложении с 50+ таблицами на схему.
В статье, упомянутой @4ware, рассказывается о проблемах с командой heroku pg:backups. (Я почти уверен, что эта статья появилась из наших запросов в службу поддержки)
У него, безусловно, есть проблемы, но это не недостаток Postgresql, схем или мультитенантности со схемами, а скорее сам инструмент heroku. Теперь, когда Postgresql имеет поддержку ingres для своих баз данных, вам не нужно использовать их встроенные инструменты. Мы просто pg_dump, когда нам нужно, и он работает так же быстро, как и следовало ожидать.
Как я могу использовать внешние инструменты? Может кто-нибудь уточнить это?
1 ответ
Я не знаю, что этот человек имеет в виду под "ingres"- конечно, не продукт, Ingres. Возможно, "вход", то есть "входящий"?
В любом случае: Вы можете установить прямое SSL-соединение с базой данных PostgreSQL на Heroku, используя любой инструмент, поддерживающий протокол libpq. Это включает psql
... а также pg_dump
,
Просто:
pg_dump -Fc -f mydb.dbbackup "sslmode=require host=my.heroku.host.name port=5432 dbname=my.heroku.db.name user=my.heroku.user"
(с любыми другими вариантами, которые вы хотите).
Смотрите документацию Heroku для более подробной информации.
Обратите внимание, что учетные данные базы данных Heroku могут изменяться в соответствии с приведенной выше ссылкой на документацию. Поэтому, если вы автоматизируете это или делаете это регулярно, вы должны использовать свою учетную запись Heroku для динамического получения учетных данных базы данных в соответствии с руководством Heroku:
pg_dump -Fc -f mydb.dbbackup $(heroku pg:credentials DATABASE)