создание бэкапа всех баз на старом сервере
1 |
mysqldump -u root -p --all-databases > dbname.sql |
Подключаемся к БД на новом сервере
1 |
mysql -u root -p |
Создаем базу данных dbname_new на новом сервере
1 |
CREATE DATABASE dbname_new; |
Выходим из консоли БД:
1 |
\q |
Разворачиваем бэкап на новом сервере в заранее созданной базе данных dbname_new можно при помощи утилиты mysql
1 |
mysql -u root -p dbname_new < dbname.sql |
При весе бэкапа 100 мегабайт, время импорта приблизительно 5 минут…
Для постоянного бэкапа
Создаем скрипт:
1 2 3 4 5 6 7 8 9 |
nano /home/user/scripts/bcp_bd_mysql_v01.sh #!/bin/bash # присваиваем текущую дату переменной date день.месяц.год.часы.минуты.секунды #date=`date '+%d%m%y_%H.%M.%S'` date=`date '+%Y%m%d_%H.%M.%S'` # Создает архив из списка файлов (backup_list) #tar -T backup_list -czf $date.tar.gz mysqldump -u user_db -puser_db_password --all-databases > bcp_bd_mysql_v01_$date.sql mv bcp_bd_mysql_v01_$date.sql /bcp/bcp_bd_mysql_v01_$date.sql |
В крон добавляем задание:
1 |
nano /etc/crontab |
1 2 |
#Скрипт еженедельного бэкапа всех БД и пользователей mysql (полночь ВС) 00 00 * * 0 root sh /home/guw/scripts/bcp_bd_mysql_v01.sh |