У меня две машины:
Remote
, Сервер Ubuntu, example.com, база данных: staging
(владелец user2, pass2), вход без пароля для пользователя user1 (sudoer) через sshLocal
, Ubuntu, localhost, база данных: local
(владелец user3, pass3)Вопрос в том:
staging
база данных в local
(и наоборот) в одной команде / скрипте?Это не производственные базы данных, поэтому мне не нужна синхронизация в реальном времени. Мне просто нужно автоматизировать psql
задачи (обычно выполняются путем перехода на phppgadmin, экспорта данных в файл, импорта данных из файла через psql
, все из Local
машина).
Лучшим решением было бы быть независимым от владельца базы данных / пароля, потому что у меня есть несколько пар таких баз данных. У меня есть root-доступ на обеих машинах, и я могу установить любые дополнительные необходимые учетные записи пользователей / программное обеспечение.
Может быть достаточно просто написать сценарий дампа базы данных и затем передать файл на другой сервер базы данных, а затем восстановить:
Утилита pg_dump, входящая в состав сервера PostgreSQL, может использоваться администраторами баз данных для создания дампов или резервных копий баз данных в файл. Синтаксис pg_dump:
Я не фанат этого сценария http://www.wisdombay.com/articles/pg_dmp.sh но это должно сработать для вас.
Причина моей осторожности в том, что в нем хранятся ваши логины и пароли.
Теперь просто перейдите к серверу резервного копирования и запустите задание cron для импорта баз данных.
Если застрял - дайте знать.