tar + gzip + mysqldump

sa
sa аватар
User offline. Last seen 5 дней 2 часа ago. Offline
Зарегистрирован: 05/11/2008

В общем уже осилил сжатие файла в процессе создания дампа базы данных MySql

получается так:

mysqldump -u USER -p DataBaseName | gzip > ~/backup/GzippedFile.dump.gz

В общем желательно gz в конце целевого файла написать. И приведенный выше пример создаст архив базы данных DataBaseName в зажатом файле, названном GzippedFile.dump.gz.

В моем примере файл помещается в директорию backup в корне домашней директории.

Внимание вопрос знатокам:

необходимо в одну строку поместить каталог в tar файл, а затем его и за gzip-ить

Время, как бы, пошло. Да, я тоже пошел гуглить.

______________________________
In the world without walls, who needs windows?

Гость
Анонимус не знает, а что,

Анонимус не знает, а что, нужно?

sa
sa аватар
User offline. Last seen 5 дней 2 часа ago. Offline
Зарегистрирован: 05/11/2008
Создание резервной копии и одновременное сжатие

Чтобы создать tar архив и обработать полученные данные gzip на лету можно сделать так:

tar -cf - ~/public_html/ | gzip > ~/.backup/archive/public_html.2009-08-22.tar.gz

Вот так, вместо 2-х команд - одна.

Вуаля.

Еще полезная вещь уметь распаковывать архивы:

Как говорят нам слакваристы

tar -xvzf файл.tar.gz

Здесь довольно много опций. Что же они означают? Опция -x означает извлечение. Это важно, поскольку она сообщает tar'у, что именно нужно сделать со входным файлом. В данном случае он будет снова разбит на файлы, из которых он был “слеплен”. Опция -v означает включение подробного режима. При этом на экран будут выведены названия всех извлекаемых из архива файлов. Неплохо было бы использовать эту опцию, чтобы распаковка не выглядела слишком скучно. Вы также можете использовать -vv, чтобы вывод был ещё более подробным и вы получили ещё больше информации об извлекаемых файлах. Опция -z сообщает tar'у о том, что файл.tar.gz нужно сначала пропустить через gunzip. И, наконец, опция -f сообщает tar'у, что следующая строка в командной строке - это файл, с которым надо работать.

Можно бекапиться, точнее нужно.

______________________________
In the world without walls, who needs windows?

Attack аватар
User offline. Last seen 15 недель 3 дня ago. Offline
Зарегистрирован: 09/03/2009
Создавать резервные копии

Создавать резервные копии лучше в архив bzip2 (.tar.bz2). Сжатие этого типа архива лучше чем у gzip, что позволяет экономить место.

Кстати, в таких случаях очень полезно использовать опцию: p — сохранять информацию о правах доступа.

sa
sa аватар
User offline. Last seen 5 дней 2 часа ago. Offline
Зарегистрирован: 05/11/2008
> в таких случаях очень

> в таких случаях очень полезно использовать опцию: p — сохранять информацию о правах доступа.

Получается примерно так:

tar -cpf - ~/public_html/ | gzip > ~/.backup/archive/public_html.2009-08-22.tar.gz

Спасибо!

______________________________
In the world without walls, who needs windows?

sa
sa аватар
User offline. Last seen 5 дней 2 часа ago. Offline
Зарегистрирован: 05/11/2008
Продолжаем изв^ экспериментировать

А как развернуть базу из сжатого дампа без предварительной распаковки, просто перенаправляя поток?

Уважаемый, Attack, не подскажите?

Пока ищу сам

______________________________
In the world without walls, who needs windows?

Attack аватар
User offline. Last seen 15 недель 3 дня ago. Offline
Зарегистрирован: 09/03/2009
Не понял, если честно :) Без

Не понял, если честно :)
Без распаковки, это просмотреть содержание архива?

Гость
!

Вот так, вместо 2-х команд - одна
да кагбэ две, просто результат одной перенаправляется на вход другой

Можно так нагородить:
noda=/tmp/sql.dmp
mknod $noda n
gzip -c > sql.dmp.gz < $noda &
estr="file=$noda log=$logfile"
exp {$estr} #типа команда экспорта

P.S. размер шрифта у code сделайте поболее, атож нехрена не видно

sa
sa аватар
User offline. Last seen 5 дней 2 часа ago. Offline
Зарегистрирован: 05/11/2008
> Вот так, вместо 2-х команд

> Вот так, вместо 2-х команд - одна

О_о

Спасибо! Попробую

Можно вопрос?

> exp {$estr} #типа команда экспорта

где писать mysqldump ?

Вот бы пример... адреса сервера и пароли ненужны ;)

______________________________
In the world without walls, who needs windows?

Гость
такэта

> где писать mysqldump ?
ну дак в этой строке и писАть - там где каммент, exp - это оракловая утилита, а в $estr передаются параметры

Гость
эта

я там немного обманул
не
mknod $noda n
а
mknod $noda p

Гость
Здравствуйте братья -

Здравствуйте братья - анонимусы