MYSQL Резервное копирование по расписанию?

На моем веб-сервере установлена ​​программа MySQL, доступ к которой осуществляется с помощью PHPMyAdmin. Мой клиент спросил меня следующее:

  1. Установить PhpBB
  2. Настройка MYSQL Резервное копирование по расписанию

Я успешно установил PhpBB, но чтобы сделать второй. Я использую PhpMyAdmin для доступа к базе данных mysql, и я не вижу ни одного типа планирования средств в phpmyadmin, а также в phpbb.

Что мне здесь делать? Пожалуйста, помогите мне, спасибо!

6 ответов

Автоматизация может быть выполнена путем создания заданий CRON на вашем сервере. Следующая ссылка содержит полный пример кода для автоматического резервного копирования базы данных

http://atoztechnical.blogspot.com/2010/08/how-to-automate-database-backups.html

или же

Сначала напишите скрипт, который использует команду mysqldump для резервного копирования вашей базы данных и хранения в определенном каталоге. Теперь мы собираемся автоматизировать процесс, выполняя этот скрипт в определенное время каждый день.

Выполните следующую команду как пользователь root

[root@vasu /]# crontab -e

Это позволяет вам редактировать файл crontab для пользователя. Это имеет шесть полей, они

1 минута

2 часа

3.День месяца

4 месяца

5.День недели

6. Команда должна быть выполнена

Добавьте следующую строку в файл crontab и закройте его.

[root@vasu /]# crontab -e
39  19  *  *  *  backup.sh 
~    
~    
~    
~    
~    
ESC:x
crontab: installing new crontab
[root@vasu /]#

Теперь ваш скрипт backup.sh будет выполняться 39 минут каждый день. Если вы хотите увидеть список cronjobs для пользователя, то выполните

[root@vasu /]# crontab -l
39 19 * * * backup.sh

backup.sh:

mysqldump -h hostname -u userbane -ppassword dbname > path/to/directory/backupname.sql 

Возможно, вы захотите прочитать документацию MySQL о методах резервного копирования базы данных. PHPMyAdmin имеет опцию "Экспорт", которую вы можете использовать для резервного копирования вашей базы данных, но нет способа автоматизировать это. Автоматизация резервного копирования MySQL обычно требует создания задания CRON, которое вызывает mysqldump. Есть и другие способы сделать это, например, с помощью моментального снимка файловой системы, но использование mysqldump, вероятно, будет проще и столь же хорошо для базы данных PHPBB. Кроме того, если вы используете виртуальный хостинг, вы, скорее всего, не сможете создать снимок файловой системы, что делает его недоступным. Создание задания CRON может быть выполнено либо путем доступа к вашему серверу через SSH, либо некоторые хостинг-провайдеры предоставляют веб-интерфейс для создания заданий CRON.

Кроме того, вы можете проверить с вашим хостинг-провайдером. Мой хостинг-провайдер (dreamhost) автоматически берет резервную копию каждый день и сохраняет последние 5 дней резервных копий. Они также предоставляют простые опции для загрузки ваших резервных копий и для восстановления в случае необходимости.

Просто обратите внимание, важно регулярно проверять резервные копии, чтобы убедиться, что они действительно могут быть восстановлены.

Это хорошие ссылки для начала:

10 способов автоматического и ручного резервного копирования базы данных MySQL http://www.noupe.com/how-tos/10-ways-to-automatically-manually-backup-mysql-database.html

Как настроить и проверить решение для резервного копирования для MySQL за 15 минут - все с использованием программного обеспечения с открытым исходным кодом http://www.zmanda.com/quick-mysql-backup.html

В качестве обходного пути вы можете использовать MySQLBackupFTP https://mysqlbackupftp.com/ Он позволяет вам подключаться к вашему phpMyAdmin и устанавливать расписание резервного копирования для резервного копирования ваших баз данных MySQL Server.

Простой способ запланировать базу MySQL — установитьautomysqlbackup(доступно, например, среди пакетов Debian). Резервная копия находится в/var/lib/automysqlbackupкаталог в формате SQL.

Этот скрипт создает резервную копию каждой базы в/var/lib/automysqlbackup/ежедневно, еженедельно и ежемесячно, а также управлять удержанием.

Обратите внимание, что привилегии и пароли базы не сохраняются вместе с базой.

Следующий скрипт может быть полезен для сохранения прав доступа/пароля баз данных:

        mysql -B -N $@ -e "SELECT DISTINCT CONCAT(
    'SHOW GRANTS FOR \'', user, '\'@\'', host, '\';'
    ) AS query FROM mysql.user" | \
  mysql $@ | \
  sed 's/\(GRANT .*\)/\1;/;s/^\(Grants for .*\)/## \1 ##/;/##/{x;p;x;}'

Один из самых простых и распространенных способов планирования резервного копирования в Linux — использование заданий Cron. Cron — это планировщик заданий в Linux, основанный на времени, который позволяет планировать автоматический запуск команд или сценариев через определенные промежутки времени. Чтобы запланировать резервное копирование с помощью Cron, вам необходимо создать сценарий резервного копирования, включающий команду MySQL dump для экспорта всех баз данных и сохранения их в файл, а затем добавить задание Cron для запуска сценария с нужным интервалом. Кроме того, вы можете добавить сценарий оболочки для загрузки файлов резервных копий в корзину AWS S3. Используя как задания Cron, так и сценарии оболочки, вы можете автоматизировать процесс резервного копирования и безопасно хранить резервные копии в облаке.

В этой статье показано, как запланировать резервное копирование MySQL с помощью заданий cron и простого сценария оболочки.

Другие вопросы по тегам