0

Копирование баз данных MySql в архив

Просто:

> mysqldump -uLOGIN -PPORT -hHOST -pPASS DBNAME > dump.txt 

В unix shell запускаем crontab -e и создаем такое правило запуска процесса создания копий базы:

0 0 * * * mysqldump -uLOGIN -PPORT -hHOST -pPASS DBNAME
	| gzip -c > `date "+%Y-%m-%d"`.gz 

Сложно:

Копирование баз данных MySql в архив — помошь, скрипты, примеры

Простой способ для /bin/sh (Запуск из коммандной строки SSH)

Код для скрипта:

#!/bin/sh
data=`/bin/date +%d.%m.%Y_%H-%M-%s`
#копирование данных из MySql в текстовый файл
/usr/local/bin/mysqldump --all-databases --user=NAME --password=PASS > /home/USER-NAME/sql-dump.sql

#превращает текстовый файл в архив
/usr/bin/gzip --best /home/USER-NAME/sql-dump.sql

#Перемещает файл sql-dump.sql в sql-dump_${data}.sql.gz
/bin/mv sql-dump.gz sql-dump_${data}.gz

Для того чтобы изменить кодировку данных в скрипт, используйте опцию

—default-character-set=charset_name

Для копирования данных с полным INSERT, используйте опцию

—complete-insert

Чтобы указать установку кодировки в коде дампа, используйте

Add SET NAMES default_character_set to the output.

—set-charset

Чтобы добавить в задание Crontab, используйте

#Создание резервной копии через каждые 45 минут
*/45 * * * * /usr/home/USERNAME/sql-backup-cronfile.sh  1>/dev/null 2>&1 

#Создание резервной копии каждый день в час ночи.
0 1 * * * /usr/home/USERNAME/sql-backup-cronfile.sh  1>/dev/null 2>&1

Примечание: файл /usr/home/USERNAME/sql-backup-cronfile.sh должен существовать(см. вверху готовый скрипт)

А потом идем и смотрим как восстановить базу MySQL

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *