Форум » Для флейма » Варианты архивирования своих баз ? » Ответить

Варианты архивирования своих баз ?

Andrey: Всем привет ! Поделитесь опытом, кто как делает резервное копирование баз ? У меня реализовано на вызове консольного RAR. Но это все же платная утилита. Хотел перейти на 7z, но он списки исключения не поддерживает. Заранее спасибо.

Ответов - 51, стр: 1 2 3 All

Andrey: AlexMyr пишет: Попробуйте убрать *.*, убрать -r J:\MyProga\UTILI\7z.exe a -ssw "C:\@ARX\Архив-БД_2011.01.17.7z" J:\MyProga\ -x@Nobackup7z.lst Этот архив НОРМАЛЬНО создается - с путями ! Другой вариант не работает. Хочу к архиву добавить ОПРЕДЕЛЕННЫЕ ФАЙЛЫ С ПУТЯМИ ! Andrey пишет: Команда: 7z.exe a -ssw -t7z -mx7 -i@backup.add "C:\@ARX\Архив-БД.7z" Файл backup.add : J:\MyProga\UPDATE\update-new.txt J:\MyProga\UTILI\*.INI J:\MyProga\IMPRT\import*.dbf J:\MyProga\FORMS\print4.ini Как добавит в архив несколько файлов из разных папок и чтоб в архиве были пути по которым файлы брались ?

Chikanuk: Из фака с http://www.7-zip.org/faq.html: How can I store full path of file in archive? 7-Zip stores only relative paths of files (without drive letter prefix). You can change current folder to folder that is common for all files that you want to compress and then you can use relative paths: cd /D C:\dir1\ 7z.exe a c:\a.7z file1.txt dir2\file2.txt Andrey пишет: А чем отличается 7za от 7z ? Платный он или нет, какая лицензия на него ? 7za - консольный вариант. Лицензия - как и у всего 7z. Денег не просят... Andrey пишет: Не хочется заморачиваться с переходом ! Я же ОДИН архив делаю, чтоб юзер мне его прислал, а я мог распаковать и работать с ихними базами. Батник ранее высланный является рабочим вариантом. Лежит в папке с базами. При запуске архивирует ВСЕ подпапки и сохраняет структуру каталогов. И упаковывает в один файл (с текущей датой и временем). Что вам и требуется, имхо. С ключами можно поэкспериментировать (увеличить сжатие или повысить скорость...)

AlexMyr: Пробуйте (у меня сохраняет с путями, правда все файлы и каталоги лежат на одном диске) 7z a aa \2\ -i@backup.txt Добавляет все файлы и подкаталоги из директории \2\ в архив aa, плюс все файлы xpi из каталога 3\, и все файлы prg из каталога bin\3\ backup.txt 3\*.xpi bin\3\*.prg


AlexMyr: Тот же freearc, все пути есть, НО без имени диска. arc a aarc c:\2\*.* @backup.txt backup.txt 3\*.xpi bin\3\*.prg bin\4\hb_out.log d:\0\hb_out.log

AlexMyr: Наверное нужно тему перенести во флейм - никакого отношения к [x]harbour кроме hbzlib не имеет.

Andrey: AlexMyr пишет: Пробуйте (у меня сохраняет с путями, правда все файлы и каталоги лежат на одном диске) А номер версии у 7z какая ? Я поставил 7-Zip 9.20 AlexMyr пишет: Наверное нужно тему перенести во флейм Согдасен !

Pasha: AlexMyr пишет: Наверное нужно тему перенести во флейм - никакого отношения к [x]harbour кроме hbzlib не имеет. Правильная постановка вопроса. Зачем вообще нужны эти внешние архиваторы ? Харбор же умеет работать к архивами zip непосредственно, без всяких костылей. Подготовил параметры, вызвал функцию - получил архив. Вызвал другую - распаковал его куда надо.

Dima: AlexMyr пишет: Наверное нужно тему перенести во флейм Сделал.

AlexMyr: Andrey пишет: А номер версии у 7z какая ? тоже на 9.20

Andrey: Pasha пишет: Правильная постановка вопроса. Зачем вообще нужны эти внешние архиваторы ? Согласен полностью. Просто хочу временно заплатку приделать. Времени не хватает для правильной переделки !

Andrey: gfilatov2002 пишет: Посмотри готовый пример в папке minigui\samples\basic\zip в котором используются следующие дополнительные библиотеки из поставки Харбора: - hbziparc - hbmzip - minizip - hbzlib Что то нет уже всех библиотек в новой поставке... Нашел только Zip Zip_2 Zip_3 Какая из библиотек быстрей сжимает файлы ? Я делал тесты ранее, несколько папок, файлы *.dbf *.fpt *.dbt *.tbr *.txt *.log - объем примерно 5Гб, сделал архивацию несколькими ВНЕШНИМИ архиваторами, получилось: формат zip (через Winrar) - архив получился 144Мб, создает за 2 мин. формат arc (через FreeArc) - архив получился 61Мб, создает за 13 мин. формат zip (через 7z) - архив получился 145Мб, создает за 5 мин. формат 7z (через 7z) - архив получился 85Мб, создает за 12 мин. Ну конечно нужно подбирать методы сжатия для увеличения быстродействия.... А сейчас сделал программу на МиниГуи (используя пример \MiniGUI\SAMPLES\BASIC\Zip) и был "убит" скоростью архивирования, ну очень медленнооооооо архивирует.... Подскажите пожалуйста как ускорить создание архива !

Dima: Andrey пишет: Подскажите пожалуйста как ускорить создание архива ! Программно только подбором степени сжатия. Железный вариант , делать архивацию на SSD винте. зы Andrey пишет: объем примерно 5Гб Размер не маленький и если скорость архивации важнее чем размер архива , тогда ставь степень сжатия ноль (1 или 2) и юзай hbzip

gfilatov2002: Andrey пишет: сделал программу на МиниГуи (используя пример \MiniGUI\SAMPLES\BASIC\Zip) Пожалуйста, обратите внимание на параметр lShowFileName в функции ProgressUpdate этого примера. Просто уберите задержку INKEY(.1) при обработке каждого файла, и дело пойдет намного быстрее

Andrey: Dima пишет: Программно только подбором степени сжатия. Программа 7za сжимает за 5 минут при степени сжатия (-mx7) А переделанный пример \MiniGUI\SAMPLES\BASIC\Zip больше ЧАСА... Даже не стал ожидать... Может чего-то я с бегунком "нахимичил"... не знаю... Пока пробую исправить...

Andrey: gfilatov2002 пишет: Просто уберите задержку INKEY(.1) при обработке каждого файла, и дело пойдет намного быстрее Да убрал совсем... Все равно БОЛЬШИЕ тормоза.... Вот результат (на Win8-32bit): Программа 7za сжимает за 5 минут при степени сжатия (-mx7) - размер архива 173 Мб Переделанный пример \MiniGUI\SAMPLES\BASIC\Zip (при LEVEL 7) за 44 минуты - размер архива 186 Мб Программа WinRar (4.20) сжимает за 4 минут при степени сжатия (-m5) - размер архива 122 Мб Программа Rar (4.20) сжимает за 3 минут при степени сжатия (-m5) - размер архива 122 Мб Народ, подскажите как ускорить процесс архивирования (да и чтобы размер не сильно вырос) ? Т.к. архив на сайт отправлять потом нужно будет...

Dima: Andrey пишет: Я делал тесты ранее, несколько папок, файлы *.dbf *.fpt *.dbt *.tbr *.txt *.log - объем примерно 5Гб, Andrey пишет: Народ, подскажите как ускорить процесс архивирования (да и чтобы размер не сильно вырос) ? А что к моменту архивации все 5 гиг инфы могут измениться ? Можно архивировать только измененные файлы , но тут нужно подумать как это правильно реализовать. Andrey пишет: Хотел перейти на 7z, но он списки исключения не поддерживает. Поддерживает однако

petr707: Цитата: Хотел перейти на 7z, но он списки исключения не поддерживает. А подробнее опишите ситуацию, каких исключений не хватает. Можно явно определять просмотром папок и генерировать файл со списком файлов для упаковки. Использую следущий вызов командной строки в отдельном minimize окне s_exe :="7za.exe a -r -y -slp -mx=1 -ssw "+(arh_name)+" -x!*.NTX -xr!*.$$$" +" -w"+(tmp_dir) здесь исключения *.NTX,*.$$$ Можно вместо 7za.exe - прикрутить исходный код от 7z, он же OpenSource

Andrey: petr707 пишет: Можно вместо 7za.exe - прикрутить исходный код от 7z, он же OpenSource А как ? Мне бы окошко с бегунком от него нужно... А самый лучший вариант в 4 потока архивировать... Только я не знаю в какую сторону копать....

petr707: 7za при формате архива .7z - сам умеет делить по потокам, не нужно это делать за него, у него лучше получится А вместо исходного кода - можно сделать портирование dll в Harbour 7zip links нужно найти кто умеет и возьмется

Andrey: Нашел более лучший вариант - создать архив файлов в 4 потока ! Есть 7zG.exe - с бегунком... Внешний вид отличный: 5 Гбай за 1 минуту пакует в 4-потока в архив на 136 Мб... Несколько раз проверял... Команда запуска: "C:\Program Files\7-Zip\7zG.exe" a TEST-7z3 -mx=3 -mmt=4 -ms=on -m0=LZMA2 -r0 *.dbf *.fpt *.dbt *.tbr *.txt *.lst *.plt *.key *.cfg *.pth *.log *.rtf Параметры: "a" - команда добавления файлов в архив; "TEST-7z3.7z" - имя создаваемого архива; "-mmt=4" - работать в 4 потока; "-mx=3" - задать режим работы "Fast" (x=3); "-ms=on" - создавать непрерывный (solid) архив, для экономии места; "-m0=LZMA2" - принудительно задействовать алгоритм LZMA2; "-r0" - включить подкаталоги рекурсивно только для подстановочные имена; " *.dbf *.fpt....." - какие файлы по маске сжимать. Осталось придумать, что делать если на компе не установлен архиватор - 7z ! Наверно лучше в свой ехе-ник эти exe и dll "затолкать" и их использовать из командной строки .... Интересно как будут антивирусники реагировать на это ?



полная версия страницы