@vlarkanov

Как максимально быстро перенести бд mysql (MariaDB) на другой сервер?

Есть база (256gb). Её нужно перенести на другой сервер. Дело осложнено тем, что на старом сервере версия 10.0.32-MariaDB-0+deb8u1, а на новом 10.1.26-MariaDB-0+deb9u1.\ Кроме того, SSD (на старом сервере RAID1 через HP контроллер, на новом будет софтовый RAID1), на которых сейчас живет база, будут перенесены на новый сервер, т.ч. потоковый бекап невозможен.

Сервера останавливать можно на разумное время.

1) Можно ли просто перенести содержимое /var/lib/mysql на новый сервер? Версия MariaDB отличается, но только на минорную версию.

Если нельзя:
2) Стоит ли использовать в таком случае XtraBackup?

если и это нельзя:
3) Как максимально ускорить создание\залив дампа с помощью mysqldump?
  • Вопрос задан
  • 1775 просмотров
Пригласить эксперта
Ответы на вопрос 2
@Fixid Куратор тега Linux
Мало известный, но самый быстрый способ переноса БД:

mysqldump -uroot DB | mysql --host=host -uroot -ppass -C DB


Данные льются напрямую между базами в виде SQL. Последний раз переливал базу в 100ГБ, получилась 99% утилизация канала и чуть больше 2 часов по времени
Ответ написан
Melkij
@Melkij
PostgreSQL DBA
Версия MariaDB отличается, но только на минорную версию.

Это major релиз.
Изучайте upgrading часть мануала: https://mariadb.com/kb/en/library/upgrading-from-m...

По идее между ближайшими major версиями репликация у mariadb работает, поэтому самое быстрое - поднять реплику, затем promote до мастера.
А, не ваш случай. Да, перенести физически диски - это будет быстрее, просто обычно нет такой возможности. Смотрите инструкцию к major обновлению, inplace upgrade возможен.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы