Был на Debain-е с MariaDB, переехал на Ubuntu с MySQL, Баз не то, чтобы много, но прилично.
Можно ли сконвертировать такие дампы?
ПС. Сначала ругается на сопоставление (новое в MySQL) - изменил, потом на длину varchar, поменял, вроде импортировалось, но сайт к примеру, который использует эту БД, всё также ругается на неверный синтаксис (движок уже не поддерживается, в связи с чем и хочу вернуться на то, что работало).
Разница между MariaDB 10.5 и актуальной MySQL 8.0 уже настолько велика, что успешный перенос дампа напрямую - это действие из разряда фантастики. Даже если кроме таблиц с данными в БД вообще ничего нет - всё равно объём ручной рихтовки будет значительным.
Так что удаление MySQL на убунте и установка там той же версии MariaDB, что использовалась на дебиане - наиболее вменяемое решение. И вероятность успеха куда как выше. Только не забудьте полностью скопировать настройки со старого сервера (SQL mode, CHARSET/COLLATION, default isolation mode и т.п.). И отдельный геморрой - перенос ролей и пользователей с паролями, с проверкой, что всё перемещено как нужно.
- Я советую остаться с MariaDB. Понятно, что можно разобраться и подрихтовать дампы вручную (вряд ли автоматичес ки), но зачем?
- Или же создать новый дамп с ключом "--compatible=mysql" https://mariadb.com/kb/en/mariadb-dumpmysqldump/#m...
В этом то всё и дело, что новый дамп сделать не получиться.
Есть только дамп MySQL (то бишь новый) и он не корректно работает на неподдерживаемом движке сайта.
То бишь движок не знает о новом синтаксисе и соответственно отсюда проблемы.
А значит мне нужно из нового сервера БД сделать дамп, создать сервер на поддерживаемой MariaDB и втулить туда новый дамп, но со старым синтаксисом.
А вы предлагаете (с ключом) сделать обратное.
Я бы и остался на марии, если бы знал, что будут проблемы, но как ответил выше, мне нужна база для MariaDB, но она на данный момент есть только на мускуле и она не корректно работает с движком сайта, потому что этот самый движок не знает о новом синтаксисе.
В этом то всё и дело, что новый дамп сделать не получиться.
Поднимаете инстанс MariaDB 10.5 ( например, в докере), заливаете туда свой дамп. И уже оттуда делаете разнообразные дампы, как предлагают в комментариях.
Простой Человек, если у вас движок хочет делать запросы, которые не поддерживает БД, проблема дампа довольно второстепенна, работать все равно ничего не будет.
Не взаимозаменяемы? Хм, неужели так сильно изменили engine?
Можно отдельно сдампить создание баз, и отдельно - сами данные. Создание подредактировать для совместимости, если есть возможность. Ну а данные должны войти как родные. IMHO так!