База данных препятствует добавлению новых данных на период снятия бекапа для того, чтобы Ваш бекап был консистентен по всем таблицам. Это стандартное поведение.
Консистентность важна для того, чтобы не получилось так, что Вы начали бекапить, забекапили первую таблицу, переходите ко второй, а в это время в первую таблицу сайт что-то записал, добавив связанную запись в третью таблицу. В бекапе останутся актуальные данные для второй, третьей, но не первой таблицы.
Если Вы хотите делать бекап без блокировки таблиц, но Вам
важна консистентность данных, Вы можете:
- Настроить репликацию MASTER-SLAVE и снимать резервные копии со SLAVE. С ним можно будет сколько угодно блокировать таблицы бекапами, поскольку SLAVE-сервер не будет использоваться сайтом. Все новые данные с MASTER доедут на него после завершения бекапа.
- Если таблицы в InnoDB, то можно освоить XtraBackup, делающий резервную копию прямо на ходу.
Если Вы хотите делать бекап без блокировки таблиц, но Вам
не нужна консистентность данных:
Для MyISAM:mysqldump --lock-tables=false ...
Для InnoDB:mysqldump --single-transaction ...