Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Администрирование *NIX систем > dump mysql |
Автор: proger 8.8.2005, 12:14 |
Как мне в кроне сделать дам определенной базы??? |
Автор: DENNN 8.8.2005, 14:38 |
Например так mysqldump -u user -p megapassword --database FBI > /usr/local/backup/FBI.sql |
Автор: Mal Hack 8.8.2005, 14:54 |
http://forum.vingrad.ru/index.php?showtopic=56218&view=getnewpost |
Автор: proger 9.8.2005, 05:56 |
спасибо! |
Автор: Step 13.8.2005, 01:36 | ||
на ловца и зверь бежит, спасибо.. только думал искать... я так понимаю что бы скидывало на другой сервак нужно с другого сервака в эту строчку впихнуть -h server1.my.com |
Автор: DENNN 13.8.2005, 13:22 |
да, если фаерволл пропустит и в авторизации разрешено с этого хоста под этим логином/паролем заходить |
Автор: Step 13.8.2005, 23:09 |
DENNN, пропустит, уж фаерволл я настраивать уже более менее научилсчя |
Автор: Kurt 19.8.2005, 16:42 | ||
Извиняюсь за глупый вопрос, а как сделать, чтоб результирующий файл сразу tar'ился и сжимался bzip'ом? |
Автор: Step 19.8.2005, 20:09 |
на сколько я понимаю нужно перенаправить вывод на упаковщик |
Автор: DENNN 22.8.2005, 13:43 | ||||
или так, кому больше нравиться
|
Автор: Step 22.8.2005, 13:51 |
а в чем разница |
Автор: DENNN 22.8.2005, 14:15 |
Да не в чем. Просто второй вариант, ИМХО, смотрится как три независимые операции: дамп, архивирование, сохранение. |
Автор: Step 22.8.2005, 14:17 |
DENNN, --> вот это значит сохраненние? |
Автор: DENNN 23.8.2005, 08:33 |
Вот ЭТО написано с двумя пробелами и представляет из себя три РАЗНЫХ операнда. "-" обозначает поток ввода/вывода. |
Автор: Step 23.8.2005, 11:50 |
а зачем два |
Автор: DENNN 23.8.2005, 14:46 |
один- создаваемый фал, второй- источник |
Автор: Step 24.8.2005, 00:30 | ||
видать моему мышлению к логичности линукса придеться еще слегка приспособиться ![]() Спасибо |
Автор: Kurt 9.9.2005, 01:41 | ||
DENNN Что-то не получается:
|
Автор: bilbobagginz 9.9.2005, 18:27 |
Курт... ты пытаешься вывод мусулодампа распаковать или запаковать ? ( по моему он выдаёт чистый sql. ) у тебя команда: tar -zxf - - что на языке человека значит распаковать файл пришедший на стандартный ввод, и выплюнуть его на стандартный вывод. ты наверное пытаешься написать: tar -zcf - - А назвать такой файл наверное стоит: test.sql.tgz удачи. |
Автор: Kurt 11.9.2005, 18:35 | ||
bilbobagginz Все твои замечания верны и справедливы. И понимаю, что написано не то. (ключи tar'а я знаю). Просто я все сделал по http://forum.vingrad.ru/index.php?showtopic=60793&view=findpost&p=498508 - всего лишь хотел показать, что получается в итоге... а вернее, что ни фига не получается.. ![]() DENNN Там точно все правильно? З.Ы. bilbobagginz Так, как ты говоришь, я уже делал:
![]() |
Автор: bilbobagginz 11.9.2005, 20:53 |
вообще-то я не знаю почему ты так делаешь вообще. во первых - запусти просто: mysqldump -u ignat --password=ignat -B test > mydump.sql а потом уже извращайся с дампом - сколько влезет, напр: tar -cf - mydump.sql | gzip > mydump.tgz не вижу смысла брать stdin, и выплёвывать на stdout, без хотя-бы именования данных. удачи. |
Автор: Black 11.9.2005, 21:10 |
// получаем дамп БД mysqldump -p -u root base --add-drop-table > /путь_куда_cохранить_файл_с_дампом_БД_MySQL/dump.sql // где root - имя пользователя имеющего доступ к БД // base - это БД которую будем резервировать // --add-drop-table (это значит что данные будут перезатерты если встретяться одинаковые записи на новой БД, иначе могут быть проблемы с уникальными ID) // Потом спросят пароль, надо ввести пароль указанного пользователя (при вводе пароль не отображается!!!) // Архивируем файлик дампа БД, чтобы меньше весил. tar cjf /путь_куда_положить_архив/dump.tar.bz2 /путь_к файлу_который архивируем/dump.sql |
Автор: bilbobagginz 11.9.2005, 22:07 |
PHP-DIRECTOR, у меня к тебе придирки-советы (есссно собссный опыт): 1. если пароль есть, но не выдан, а это в скрипт пихают... то скрипт зависнет... пока не отвалится. а если в крон это засунуть ... имэйлов наполучается кто-то. 2. bzip2 - не на всех системах стоит, и если и стоит, то не всегда в PATH.флажок без минуса - тоже не на всех системах сработает... лучше медленнее, но на 100. ( на Фре напр. стоит бзип, а на линухах - не на всех по умолчанию, тоже и на солярке, а tar - есть гнюшный а есть не гнюшный ) 3. старайся НИКОГДА не архивировать абсолютные пути, по крайней мере без начального "/". потом, когда разархивируешь, можно себя удивить... |
Автор: Kurt 11.9.2005, 23:10 |
Собственно, для чего хочу сразу архивировать - банально места мало. После получения дампа я отправляю по ftp получившийся архив на другую машину. |
Автор: bilbobagginz 12.9.2005, 01:19 |
тогда можешь использовать netcat (nc) если всё это синхронизированно, диск даже не нужен: на бекап-сервере: nc -l -p 3333 > mydump.sql.gz на клиенте: mysqldump <blablabla> | gzip - | nc -q 1 backupserver 3333 порт и адреса конечно поменяй. |
Автор: Guest 15.9.2005, 07:48 |
А зачем тебе tar тут вообще нужен? mysqldump создаст один текстовой файл, жми его gzip-ом или bzip-ом на лету и все. |
Автор: DENNN 15.9.2005, 16:36 | ||
Сорри. Моя ошибка не подумал о простой вещи: тар хранит сжатым не только текст, но и добавляет к нему служебную информацию включая имя и путь файла. Поэтому перенаправления с консоли не работает. Как сказано в справке, тар умеет распаковывать из консольного потока и записывать упакованные файлы в поток. Так же не заработает:
Потому как они тоже хотят "хендл" файла (по крайней мере у меня сейчас не заработало). Сделами чуть-чуть разберусь и найду вариант (т.к. compress, zcat и иже с ними тоже хотят файл в качестве входного параметра) Добавлено @ 16:37 P.S. netcat действительно будет хорошим решением в данном случае. |
Автор: DENNN 29.9.2005, 18:37 | ||
Вот. Мои исследования привели к следующему результату:
Проверено, все рабоатет |