Я использую mysqlpump для резервного копирования базы данных:
mysqlpump --single-transaction --add-drop-database --skip-definer --databases mydatabase --result-file/opt/myservice/backup/export.sql
Моя БД содержит несколько представлений, и часть из них экспортируется с абсолютно неправильными SELECT в запросах CREATE VIEW, таких как:
CREATE VIEW 'careerpulse-staging'.'user_view' AS SELECT
1 AS 'id',
1 AS 'name',
1 AS 'department',
1 AS 'manager_id'
;
Почему это происходит и как я могу это исправить?
Версия MySQL - 5,7
Это ожидаемое поведение, а не ошибка. Просмотрите полный файл дампа.
Невозможно создать представления, ссылающиеся на другие представления или таблицы, если эти другие представления или таблицы уже не существуют.
Чтобы устранить потенциальные круговые зависимости, фиктивные представления создаются в первом проходе, и после того, как все представления и таблицы были созданы, эти фиктивные представления удаляются, а реальные представления создаются со второго прохода.
Правильные определения определений должны быть найдены около конца файла дампа.
--single-transaction
--skip-definer
en или--skip-definer
чтобы увидеть, что программа экспортирует тогда?