1

В настоящее время каждый день перед началом работы я выполняю следующую процедуру:

  • SSH к производственному серверу
  • gzip наш ежедневный файл дампа базы данных
  • заархивируйте файл gzipped на мой компьютер
  • Gunzip файл дампа
  • dropdb моя база данных
  • созданная моя база данных
  • psql mydatabase <dump.sql

Возможно ли (я уверен, что это так) автоматизировать этот процесс на Mac OSX? Таким образом, это делается к тому времени, когда я добираюсь до работы утром. Если так, какой самый быстрый и простой способ?

2 ответа2

1

Я бы настроил это как пару сценариев оболочки, запущенных cron.

На сервере создайте задание для gzip файла дампа базы данных и скопируйте его в известное место, например /home/russ/backups/latest.gz . Запланируйте выполнение этого сценария с помощью cron, чтобы у него оставалось не менее 30 минут до запуска задания клиента.

Скрипт на стороне клиента сделает все остальное - все на стороне клиента.

Если вы хотите быть более похожим на mac, вы запустите скрипт на стороне клиента с помощью launchd вместо cron, но cron также должен нормально работать.

Если у вас еще нет навыков, чтобы сделать это, я думаю, что это отличный проект, который поможет вам изучить сценарии оболочки и планирование cron.

0

Вы можете использовать Expect для работы. Эта программа может запускать задания и отправлять входные данные процессу, основываясь на полученных результатах.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .