Может ли MySQL надежно восстанавливать резервные копии, содержащие представления или нет?

Среда: Ubuntu 11.10, MySQL 5.1.58

У меня есть небольшая база данных с представлениями . Когда я пытаюсь выполнить дамп и восстановление, я получаю

ERROR 1356 (HY000) at line 1693: View 'curation2.condition_reference_qrm_v' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them

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

Вот простой подход, который я использую для демонстрации проблемы:

MYSQL_PWD='xxx' mysqldump -u root --routines -B curation \
| perl -pe 's/`curation`/`curation2`/' \
| MYSQL_PWD='xxx' mysql -u root

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

Итак, вопрос: может ли MySQL надежно восстанавливать резервные копии, содержащие представления или нет? Если может, то как? Если нет, что люди делают в качестве обходного пути?

Спасибо, Рис

8
задан Reece 8 December 2011 в 19:57
поделиться