В зависимости от вашего хоста, вы можете запускать cron (запланированные задачи в окнах) на коробке. Если это так, и если у вас есть доступ к mysqldump, то вы можете mysqldump содержимое базы данных с помощью команды, такой как ...
mysqldump -u database_username -pdatabase_password -h 127.0.0.1 > ~/database.backup.sql
Конечно, это более универсальное решение, чем то, что вам может понадобиться. Я думаю, что зависание, которое вы испытываете, заключается в том, что вы думаете, что это как-то связано с вашим кодом. Это не так.
Полагаю, у вас есть какая-то веб-панель управления на этом хосте? Если это так, найдите в нем функцию cron или запланированных задач (весьма вероятно, что она там есть) и посмотрите, какие у вас есть варианты.