Несовместимость mysqldump и альтернативной СУБД
Симптомы
При создании резервной копии возникает ошибка совместимости mysqldump и альтернативной базы данных. В журнале по пути /usr/local/mgr5/var/backup2_system.log присутствует ошибка следующего вида:
WARNING Cant backup db what: Failed to back up the database. Error: ‘mysqldump: Couldn’t execute ‘select column_name, extra, generation_expression, data_type from information_schema.columns where table_schema=database() and table_name=‘vb_aaggregate_temp_1384809000’ order by ordinal_position’: Unknown column ‘generation_expression’ in ‘field list’ (1054)Решение
В данной ситуации необходимо создать дамп базы данных вручную с помощью команды:
docker exec -it containername bash -c 'mysqldump dbname > /etc/mysql/conf.d/dbname.sql'Файл дампа будет доступен вне контейнера в каталоге по пути /etc/ispmysql/containername/.
Например, для альтернативной базы данных с именем dbname из MySQL 5.5 команда будет следующей:
docker exec -it mysql-5.5 bash -c 'mysqldump dbname > /etc/mysql/conf.d/dbname.sql'Файл такого дампа будет расположен по пути /etc/ispmysql/mysql-5.5/.
Импорт дампа рекомендуется выполнять в новую базу данных с новым пользователем для проверки корректности данных.