Перейти к основному содержанию

HeidiSQL — перенос БД из MySQL в MariaDB

HeidiSQL

Продолжаю переносить сервисы домашней лаборатории на NAS. Недавно развернул MariaDB на TrueNAS.

Установка MariaDB в TrueNAS

СУБД MariaDB появилась как ответвление от MySQL со статусом свободного ПО. MariaDB поддерживает высокую совместимость с MySQL, обеспечивая точное соответствие с API и командами MySQL.

Теперь нужно попытаться перенести базы из старой MySQL 8 в новую MariaDB. Операцию переноса осуществим с помощью HeidiSQL.

HeidiSQL — SQL клиент

HeidiSQL — это бесплатное программное обеспечение для людей, работающих с базами данных, которое стремится быть интуитивно понятным в использовании. "Хайди" позволяет подключаться к различным базам данных, таким как MariaDB, MySQL, Microsoft SQL, PostgreSQL, SQLite, Interbase и Firebird. После подключения вы можете редактировать данные и структуры в этих базах данных. Созданный в 2002 году Ансгаром, HeidiSQL до сих пор остается популярным инструментом для MariaDB и MySQL и активно поддерживается.

Для начала подключимся к обоим СУБД. К MariaDB на TrueNAS цепляюсь под пользователем root, к MySQL — под пользователем, у которого имеется доступ к нужным мне базам. Останавливаю сервисы, использующие эти базы данных.

sql

Доступ есть, таблички видятся.

sql

Выбираю любую базу сервера MySQL. Инструменты → Экспорт базы данных в SQL.

sql

Открывается мастер "Массовый редактор таблиц". Выделаю галкой все базы, которые требуется скопировать на MAS. На вкладке "Экспорт SQL" выделяю галками "Базы данных: Создать", "Таблицы: Создать". Выбор обусловлен тем, что в MariaDB ещё нет этих баз, если бы они уже были, то пришлось бы добавлять галки "Уничтожить". 

Данные: вставить. Остальное оставляю по умолчанию, там еще и опции есть.

Вывод: выбираю соединение с MarinDB, у меня это "Сервер NAS". База данных: Как на исходном сервере.

sql

Экспорт. Побежали проценты.

sql

Экспорт SQL выполнено.

sql

Как будто перенос выполнен. Закрыть.

Действительно, на сервере MariaDB появились копии баз.

sql

Меняю пути к БД на сервере приложений. Ничего не работает, нет доступа, это ожидаемо.

sql

В HeidiSQL нажимаю кнопку управления пользователями в MariaDB.

sql

И создаю пользователя с правами доступа к перенесённым базам, под которым приложение коннектится к БД. Указываю нужные права.

sql

Теперь сервис работает.

sql

Обрадовался я рано, сервис не до конца настроен. Нужно было указать несколько важных настроек для MariaDB:

MariaDB — настройка конфигурационных параметров в TrueNAS

После применения нужных мне настроек базы на MariaDB заработали без проблем.

Теги

 

Похожие материалы

MSSQL — ошибка при восстановлении лога транзакций

Пытаюсь настроить зеркало, снимаю полный бэкап и бэкап лога. Затем пытаюсь восстановить базу на зеркале. Бэкап bak нормально восстанавливается, а бэкап trn не восстанавливается с ошибкой: The log in this backup set terminates at LSN 26204000001366300001, which is too early to apply to the database. A more recent log backup that includes LSN 26204000001367500001 can be restored.

Теги