Страница 2 из 3

Re: Файловый дампер

UNREAD_POSTДобавлено: 10.07.2011 20:54:23
bigvax
navikg писал(а):У меня в сприкте используется библиотека zip.lib.php
Там такой вариант не прокатит


Угу. Посмотрел. Она не умеет :(
Вот тут народ решает похожую задачу:
http://forum.webmasterschool.ru/index.php?action=showTheme&idForum=1&id_theme=341&page=2
Глянь - может-быть пригодится ;)

ЗЫ.
А без exclude - сможешь новую версию dbДумпер синтегрировать?
А то хочется, А самому браться - надо с нуля в тему втыкаться, что трудозатратно ;)

Re: Файловый дампер

UNREAD_POSTДобавлено: 10.07.2011 21:48:31
navikg
К сожалению пока времени нет
Да и позабыл я как там все устроено - год назад все делал

Есть способы намного проще бэкапить. Через bash скрипт или через php-команду exec()
Я своим дампером уже не пользуюсь давно :)

Re: Файловый дампер

UNREAD_POSTДобавлено: 12.12.2011 18:29:53
sibero
Файловый дампер пригодился бы, хотя бы в версии pro. Планируется ли в новой версии?

Re: Файловый дампер

UNREAD_POSTДобавлено: 12.12.2011 20:29:41
zapimir
Файловый бэкапер сейчас в разработке, пока что он будет отдельным продуктом, чтобы можно было оттестировать всё, в дальнейшем скорее всего будет объединение.

Re: Файловый дампер

UNREAD_POSTДобавлено: 12.03.2012 10:59:37
Murz
А планируется ли какая-либо лайт версия с бекапом базы и файлов?

Основная операция, которая требуется большинству пользователей - это быстренько залить маленький скрипт на сайт, ввести логины-пароли (без сохранения в файлах), сделать сразу 1 кликом бекап базы (всех доступных баз под паролем или конкретной), и всех файлов сайта (за исключением папки бекапа) в 1 архив, потом этот архив скачать к себе на комп.

И для этого понаписаны сотни скриптов, но у каждого свои проблемы и косяки - уже очень много пересмотрел, ни одного себе не выбрал.

Поэтому было бы очень хорошо выпустить какой-нить sypex site dumper lite, который быстро и хорошо выполняет именно данную операцию, без лишней кучи настроек, и желательно чтобы это всё было в одном файле.

Пример работы:
1. Имеем ftp доступ к сайту и пароли к бд. Заходим на FTP, создаём папку backup, заливаем туда 1 файл sypex-sitedumper.php

2. Заходим на example.com/backup/sitedumper.php, видим форму:

Делать бекап базы [checkbox]
Host [localhost]
login
password
database
Бекапить все доступные базы [checkbox]

Делать бекап файлов [checkbox]
Корневая папка [по-умолчанию - "../"]
Исключить папку в которой находится sypex site dumper lite [checkbox, включен по-умолчанию]
Исключить другие папки и файлы (список файлов и папок по-умолчанию)

3. Нажимаем кнопку "Создать бекап", ждём, получаем файл backup_timestamp.zip и ссылку на него.

4. Закачиваем файл через http к себе на комп.

5. Нажимаем на странице кнопку "Удалить созданный файл бекапа".

Всё, имеем с помощью пары кликов за пару минут полный бекап сайта (файлы и база)!


Если кто-то уже находил готовое решение с таким функционалом, то киньте пожалуйста в меня ссылкой!

Уже несколько лет ищу и не нахожу, везде либо монстры с кучей лишнего функционала либо слишком простые скрипты, которые на большинстве хостингов не работают из-за отсутствия каких-то библиотек либо вылетают по нехватке памяти, лимиту времени. А хотелось бы найти простенький скрипт в 1 файл который быстро и хорошо делает эту описанную операцию.

Re: Файловый дампер

UNREAD_POSTДобавлено: 12.03.2012 11:01:13
Murz
От себя - готов провести массовое тестирование такого скрипта на разных хостингах и багрепортинг.

Re: Файловый дампер

UNREAD_POSTДобавлено: 12.03.2012 11:22:18
navikg
которые на большинстве хостингов не работают из-за отсутствия каких-то библиотек либо вылетают по нехватке памяти, лимиту времени


вот в этом всегда заключается проблема :)
на каждом хостинге по своему, трудно подобрать то что будет рабоать везде:
1) если сжимать через юниксовую команду tar - то на половине хостингов закрыты функции exec() и system()
2) если сжимать средствами пхп - то надо подключать zip-библотеки (они тоже не везде есть) и закачивать пхп-класс для работы с zip. Причем по времени выполнения и создаваемой нагрузке в 50% случаев скрипт затыкается и ничего не бэкапит

поэтому я отказался от этой идеи
и самый реальный способ бэкапа - это написать shell-скрипт
и запускать его кроном или через ssh

Re: Файловый дампер

UNREAD_POSTДобавлено: 12.03.2012 12:06:13
Murz
navikg, не на каждом хостинге дают shell и не каждый светловолосый вёбмастер понимает что такое ssh :) А скрипт хотелось бы универсальный, чтобы работал везде где получится.

Поэтому можно сделать так:
1. Проверяем работоспособность exec() и system() - делаем тестовые создания пустых архивов, если есть то бекапим через них.
2. Если не прокатило то подключаем zip-библиотеку, работаем через неё.
3. Если не прокатило и есть ещё какие-то методы обхода, более тормозные но рабочее, то юзаем их.

Для решения проблем с нагрузкой можно сделать разбиение всего процесса на части. Насколько я понимаю, работа уже идёт по ajax, так что можно поступить следующим способом:

1. Добавляем в настройки галочку "Обход лимита нагрузки на процессор и времени выполнения скрипта".

2. Если галка стоит, то разбиваем список всех файлов на части по размеру, например по 5 мбайт (задаётся в настройках).

3. Делаем архив первой группы файлов из 5 мбайт, делаем тайм-аут 60 секунд (задаётся в настройках), после него добавляем в архив следующую группу и так пока не кончится файло.

4.Как группы закончились так всё, весь архив у нас готов.

ЗЫ: Поправил версию из поста viewtopic.php?f=4&t=64#p1156 для совместимости с php 5.3, также убрал лишние notice и добавил в исключения папку самого скрипта бекапа (чтобы он не бекапил сам себя), а также по-умолчанию сделал чтобы он бекапил верхнюю папку (../)
Выложил тут: http://ifolder.ru/29239401

В целом вроде как он работает для вышеописанных целей, но довольно много лишнего в настройках и хотелось бы всё в одном файле.

Ещё я заметил что там есть лишний этап - запаковка архива файлов в ещё один архив, мне кажется можно просто добавить sql-файл в архив с файлами.

Re: Файловый дампер

UNREAD_POSTДобавлено: 12.03.2012 12:12:01
Murz
Для запаковки всё в 1 большой файл вот такое решение:
В index.php вставляем функцию getfile() которая берёт параметр $_GET['filename'] и по имени отдаёт содержимое файла, а само содержимое файлов пишем в массив $files=array('load.php'=>'[file_content]');
А часть классов можно просто вставить в index.php вниз файла.

CSS классы можно использовать inline, а картинками - пренебречь.

Очень хороший пример - http://phpfm.sourceforge.net/ - всё в одном файле, включая пароль доступа, также внутри этого же файла функции "TAR/GZIP/BZIP2/ZIP ARCHIVE CLASSES 2.0".

Re: Файловый дампер

UNREAD_POSTДобавлено: 13.03.2012 19:06:30
zapimir
В ближайших планах выпуска объединенной версии нет, так как для начала хочется оттестировать функционал. Так же не ставится задача упаковки в один файл, так как в первую очередь стоит задача сделать именно бэкап сайта (который будет запускаться регулярно по расписанию, и бэкапить измененные данные), а не просто одноразовую сливалку. Также скорее всего будет свой формат файла, так как TAR не устраивает отсутствием контрольных сумм файлов, а также невозможностью быстрой навигации по файлу, для извлечения отдельных файлов или даже просто просмотра списка файлов. В то время как в ZIP не предусмотрено сохранение unix'овых прав доступа, нет слайсов, ну и некоторых других фишек (для инкрементального бэкапа).Так что будет что-то среднее.

Re: Файловый дампер

UNREAD_POSTДобавлено: 26.03.2012 20:59:44
eMouse
А когда это добро будет?

Re: Файловый дампер

UNREAD_POSTДобавлено: 29.03.2012 14:00:21
zapimir
Ориентировочно ближе к концу мая.

Re: Файловый дампер

UNREAD_POSTДобавлено: 30.03.2012 19:19:56
eMouse
Ждём-с :mrgreen:

Re: Файловый дампер

UNREAD_POSTДобавлено: 21.02.2013 12:15:53
Murz
Есть какой-нибудь прогресс по этому проекту? А то уже второй по счету май приближается ;)

Re: Файловый дампер

UNREAD_POSTДобавлено: 21.02.2013 15:42:47
zapimir
Да намечается весьма интересная софтина, с инкрементальным бэкапом файлов и базы, дедупликацией и загрузкой на облачные хранилища. Сейчас испытываю еще одну фишку RAW бэкап MySQL, получается в 2 с лишним раза быстрее mysqldump.
Можно почитать о том, что разрабатывается здесь.
http://habrahabr.ru/post/165947/
http://habrahabr.ru/post/167469/

Re: Файловый дампер

UNREAD_POSTДобавлено: 06.03.2013 19:08:52
vastzp
Жду с нетерпением вашу новую софтину что бы делать инкрементальные бекапы файлов (не сайтов, а просто бекапить файлы на моем компьютере).

Re: Файловый дампер

UNREAD_POSTДобавлено: 18.07.2013 15:43:44
vastzp
Прошло пол-года :) Проект развивается?

Re: Файловый дампер

UNREAD_POSTДобавлено: 18.02.2014 09:08:25
Murz
И прошло ещё полгода, а желающих получить рабочую версию полноценного дампера сайтов (файлы + база) sitebackuper от Sypex меньше не стало, аудитория только растет и жаждет! =)

Re: Файловый дампер

UNREAD_POSTДобавлено: 22.04.2014 19:56:47
taravasya
Так по ссылкам которые дал автор, есть работающие скрипты. Тестируйте. Общайтесь с автором,.. так вы и ускорите процесс создания рабочего продукта.
Кстати, zapimir, идея с инкрементным бекапом - отличная! Там на хабре умники пытались критиковать её... но у меня всё это вызывало только улыбку. Ослу понятно, что инкрементный и полный бекапы, в итоге будут опциональными. А сам Ваш скрипт однозначно если не лучший, то один из лучших в этой нише. Так что никого не слушайте и продолжайте разработку!!

Re: Файловый дампер

UNREAD_POSTДобавлено: 01.05.2014 22:26:54
vastzp
zapimir, напишите, пожалуйста, движется ли разработка файлового дампера. Ведь столько уже воды утекло :)