Подготовка
Для начала, необходимо убедиться, что на обоих машинах установлены одинаковые версии MySQL/MariaDB:
mysql -V
Назовем сервер, с которого необходимо перенести БД: сервер1, а сервер на который необходимо перенести: сервер2
На сервере1 введем команду для остановки службы БД:
systemctl stop mariadb
# или
systemctl stop mysql
Экспорт базы данных
На сервере1 выполним экспорт БД с помощью команды mysqldump.
Для экспорта всех баз данных необходимо ввести:
mysqldump -u [USER] -p --all-databases > all_db.sql
Для экспорта определенной базы данных необходимо ввести:
mysqldump -u [USER] -p --opt [DATABASE_NAME] > my_db.sql
Далее любым удобным вам способом копируем файлы БД на сервер2.
Импорт БД из файла дампа
Для импорта всех баз данных введем:
mysql -u [USER] --all-databases < all_db.sql
Для импорта одной БД:
mysql -u [USER] -p new_db_name < my_db.sql
Полный перенос баз данных и пользователей на другой сервер
Для полного переноса можно воспользоваться утилитой rsync, для этого введем команду:
rsync -avz /var/lib/mysql/* root@server2.aeza.network:/var/lib/mysql/
Проверка результата
Для проверки переноса БД введем команду:
mysql -u [USER] -p
> show databases;