Как автоматически сделать резервную копию базы данных MySQL с помощью PHP

Kak Avtomaticeski Sdelat Rezervnuu Kopiu Bazy Dannyh Mysql S Pomos U Php



MySQL — это СУБД с открытым исходным кодом, которая может эффективно создавать, управлять и хранить огромные объемы данных в структурированном виде. Для обеспечения безопасности данных важной задачей является резервное копирование базы данных. MySQL поддерживает множество языков, поэтому для создания резервной копии базы данных MySQL пользователь может написать сценарий на PHP, который является мощным языком сценариев.

В этой статье мы обсудим, как создать резервную копию базы данных MySQL с помощью PHP и автоматизировать процесс резервного копирования.

Автоматическое резервное копирование базы данных MySQL с помощью PHP

Чтобы написать PHP-код, откройте любой редактор кода. Для этого поста « Код Visual Studio ' используется:









Создайте файл PHP с именем « db_backup.php ”:







Введите этот код и укажите свои учетные данные базы данных MySQL:

определять ( 'БД_ХОСТ' , 'ваш_mysql_хост' ) ;

определять ( 'БД_ПОЛЬЗОВАТЕЛЬ' , 'ваше_mysql_имя_пользователя' ) ;

определять ( 'DB_PASS' , 'ваш_mysql_пароль' ) ;

определять ( 'БД_ИМЯ' , 'ваше_имя_базы_данных' ) ;

Укажите каталог Backup, в котором будут храниться файлы резервных копий:



определять ( 'BACKUP_DIR' , '/путь/к/вашей/резервной копии/каталогу' ) ;

Установите формат даты для имени файла резервной копии:

$date = дата('Y-m-d_H-i-s');

Определите « резервный_файл ”:

$backup_file = BACKUP_DIR . '/' . ИМЯ_БД . '-' . $ дата . '.sql';

Чтобы создать файл резервной копии, используйте утилиту mysqldump и укажите учетные данные базы данных:

$command = 'mysqldump --user='.DB_USER.' --password='.DB_PASS.' '.DB_NAME.' > '.$backup_file;

система ($ команда);

Сожмите файл резервной копии, используя « gzip ' инструмент:

$gzip_command = 'gzip'.$backup_file;

система ($ gzip_command);

Введите этот фрагмент кода, чтобы удалить старые файлы резервных копий, для этого сообщения файлы, которые « 7 ” дней будет удалено:

$find_command = 'найти '.BACKUP_DIR.' -type f -name '*.gz' -mtime +7 -delete';

система ($ find_command);

Сохраните файл и запустите его, чтобы убедиться, что файл резервной копии создан или нет. Откройте терминал редактора кода и введите команду для выполнения файла:

php .\db_backup.php

Перечислите каталог, чтобы увидеть, существует ли файл резервной копии. В выходных данных отображается успешно созданный файл резервной копии:

Чтобы автоматизировать процесс резервного копирования, откройте меню «Пуск», выполните поиск « Диспетчер задач » и нажмите на кнопку « Открыть ' кнопка:

Из ' Действия » и нажмите кнопку « Создать задачу ' вариант:

Откроется новый мастер. Отправляйтесь в « Общий » и укажите название задачи. Выберите параметр, обеспечивающий резервное копирование, даже если пользователь вышел из системы:

Перейдите к « Триггеры » и нажмите кнопку « Новый ' кнопка:

Выберите вариант « По расписанию ». Выберите запланированное время как « Ежедневно ' и отрегулируйте ' Начинать ' время. В дополнительных настройках отметьте « Включено ” и нажмите кнопку “ ХОРОШО ' кнопка:

Статус изменится на « Включено ”:

Выберите « Действия » и нажмите на кнопку « Новый ' кнопка:

Введите имя для «Действие» и найдите « Программа/скрипт ” PHP-файл, который вы создали, и “ Добавить аргументы » и нажмите « ХОРОШО ”:

Действие будет успешно создано:

Перейти к « Условия » и установите флажок « Разбудите компьютер, чтобы потереть эту задачу ”:

В ' Настройки » и выберите параметры, как показано в выходных данных, и настройте время для перезапуска и нажмите на « ХОРОШО ' кнопка:

Появится приглашение, введите учетные данные и нажмите « ХОРОШО ' кнопка:

Ваша база данных MySQL автоматически создаст резервную копию. Проверьте каталог резервных копий, чтобы увидеть файлы резервных копий, когда это необходимо:

Вы успешно создали файл PHP для резервного копирования базы данных MySQL, а затем для автоматизации процесса резервного копирования использовали планировщик заданий.

Заключение

Используйте редактор кода для создания файла PHP, укажите учетные данные базы данных MySQL, а также формат имени файла резервной копии и формат даты. Используйте команду mysqldump для создания файла SQL и инструмент gzip для сжатия файла SQL. Используйте планировщик заданий для автоматизации процесса резервного копирования. В этом посте показано, как автоматически создавать резервные копии базы данных MySQL с помощью PHP.