Какой самый эффективный способ автоматически создать резервную копию базы данных MySQL, распаковать ее и отправить по электронной почте в конкретную учетную запись?

Я немного параноидален по поводу потери базы данных моего форума, и я обычно занят в течение недели и часто забываю делать еженедельное резервное копирование (вместо этого, делать раз в две недели или ежемесячно, что не так уж плохо, но менее часто, чем я) хотел бы). Настроить его с помощью cronjob и электронной почты (или FTP/SFTP, как я только что понял, что одна из баз данных будет слишком большой для размещения в электронном письме) будет намного проще, а также менее подвержено риску. чтобы я забыл.

Как я сейчас на это смотрю

mysqldump dbname> YYYY-MM-DD_dbname.sql gzip YYYY-MM-DD_dbname.sql Либо отправьте YYYY-MM-DD_dbname.sql.gz в качестве вложения в адрес электронной почты, либо {S,} отправьте его по FTP на другой сервер и отправьте электронное письмо, сообщающее мне, что резервное копирование и передача прошла успешно.

Есть ли лучший способ сделать это? Какие-нибудь примеры того, как вы это сделали?

1 ответ1

1

Я не думаю, что вы можете сделать намного лучше, чем у вас есть. Я бы, наверное, использовал что-то вроде следующего:

  • создать дамп базы данных
  • сжать или сжать другим способом (технически необязательно)
  • используйте scp или rsync чтобы скопировать файл на другой сервер
  • запустить контрольную сумму на удаленном сервере, чтобы проверить копию (необязательно)
  • удалить исходный дамп базы данных (необязательно)
  • отправить электронное письмо с указанием успеха

Или, если какой-либо шаг этого не удастся, выйдите и немедленно отправьте электронное письмо с объяснением ошибки. (Я предполагаю, что у вас есть необходимые инструменты, например, rsync или scp , sha1sum или md5sum , gzip , mail или sendmail или аналогичные)

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