
Понадобилось перенести огромную mysql базу данных, на другой сервер. Всего объем: : 18гб, около 266 млн. записей.
Стандартными средствами phpMyadmin, не возможно это сделать, не поможет и известный скрипт Sypex Dumper.
Но мы можем воспользоваться средствами MySQL через SSH.
Подключаемся по SSH к серверу куда нам нужно перенести вашу БД.
ssh user_name@server_ip
Экспортировать базу в файл sql:
mysqldump -h server_ip -u user_name -p db_name>db_dump.sql
Импортировать с файла sql в бд:
mysql -u user_name -p db_name <db_dump.sql
Импортировать базу с архива zip
unzip -p db_dump.sql.zip | mysql -u root -p db_name
Импортировать все sql файлы с папки в бд
cat *.sql | -u user_name -p db_name
Для отображения процесса импорта Установите утилиту pv
sudo apt install pv
И просто в конце нужной команды добавьте
| pv
Импорт через MySQL-консоль:
mysql> use db_name;
mysql> source backup-file.sql;
Выйти с терминала, не убивая процесс.
Будет полезно если процесс очень долгий
Имейте в виду, параметр почему-то работает, только если и пароль сразу задать в команде.
Добавьте в конце команды:
& disown
Выход через:
exit
Если при импорте вы вдруг получите ошибку, попробуйте посмотреть: Ошибка: MySQL Server Has Gone Away