Наконец-то завершены недельные полигонные испытния дамперов MySQL!!!
Условия тестирования: скрипты установлены на localhost. Во время прогонов никакие другие программы не запускались (поэтому и тестил так долго). Лимит времени выполнения скриптов (в php.ini) выставлен 86400 сек., в скриптах - без ограничений (если предусмотрено) либо 86400 сек.
В качестве тестовой БД был взят архив служебной БД (MS Access) за прошлый год. К сожалению, из-за слишком большого объема базы узким местом стал винчестер

База SQL: 224.73 MB
Всего записей: 1'958'552
Apache Version: 1.3.27
PHP Version: 4.3.0
MySQL Server: 3.23.47
MySQL Client: 3.23.49
Windows XP Pro SP2 v5.1
CPU: Celeron 1700 MHz
RAM: 256 MB
HDD: Seagate ST340810A
Здесь приведу только общие результаты. Подробнее (с комментариями) можно посмотреть в сводной таблице (см. аттачмент).
Код: Выделить всё
1 = Sypex Dumper Lite 1.0.7
2 = backupDB() 1.1.32
3 = phpMyAdmin 2.8.0.2
4 = MySQLDumper 1.21b
5 = phpMyBackupPro v.1.8
+-----------+--------------+---+--------------+---+
| 1 | 2 | 3 | 4 | 5 |
+-------+-----------+--------------+---+--------------+---+
| Создание дампа, сек |
+-------+-----------+--------------+---+--------------+---+
| sql | 486(+0%) | 1005(+106.9%)| x | 705(+45.1%) | x |
+-------+-----------+--------------+---+--------------+---+
| gz | 578(+0%) | 1010(+74.6%) | x | x | x |
+-------+-----------+--------------+---+--------------+---+
| bz2 | 706(+0%) | - | x | - | - |
+-------+-----------+--------------+---+--------------+---+
| Восстановление, сек |
+-------+-----------+--------------+---+--------------+---+
| sql | 483(+0%) | - | ? |5492(+1036.1%)| ? |
+-------+-----------+--------------+---+--------------+---+
| gz | 466(+0%) | - | ? | ? | ? |
+-------+-----------+--------------+---+--------------+---+
| bz2 | 509(+0%) | - | ? | - | - |
+-------+-----------+--------------+---+--------------+---+
| Размер дампа, МБ |
+-------+-----------+--------------+---+--------------+---+
| sql |191.33(+0%)|265.13(+38.6%)| x |259.53(+35.6%)| x |
+-------+-----------+--------------+---+--------------+---+
| gz | 19.30 | 20.55 | x | x | x |
+-------+-----------+--------------+---+--------------+---+
| bz2 | 13.87 | - | x | - | - |
+-------+-----------+--------------+---+--------------+---+
- : не реализовано в скрипте
x : не смог выполнить работу за 3600(!) секунд, либо выполнил с ошибкой
? : не тестил, т.к. родной дамп не был создан
phpMyAdmin в принципе отказался работать более 300 секунд, хотя ограничения были убраны (сначала пробовал 0="без ограничений", затем 86400), при этом успевая сохранить 16-18% данных.
phpMyBackupPro работал заметно дольше (целый час

MySQLDumper... На установках по умолчанию долго "разогревается" выбирая данные по 100-300 строк. Если минимум поставить тысяч так 10, тогда и кончал быстрее. Однако у него проявилась другая беда: не захотел работать с gzip библиотекой, ссылаясь на какой-то баг в ней. Сам он с тараканами в голове - другие-то работали, не жаловались... Чтобы довести испытания до конца, установил я его на реальный хостинг и погонял там. Результат: в 4 раза медленнее чем Sypex Dumper Lite на БД 8,5 МБ с 210тыс.записей. Это максимум производительности, что я смог из него выжать... Про восстановление БД из бэкапа я вообще молчу - после полутора часов ожидания (восстановит или все-таки загнется?) повторно запускать тест не было никакого желания! И так все ясно...
На третьем месте оказался backupDB(). Учитывая, что это всего один файлик (как и Sypex Dumper Lite, только размером побольше

Восстановление БД не удалось толком потестить т.к. большинство скриптов загнулось и родных дампов не удалось получить... Быть может (ЕСЛИ БУДЕТ ЖЕЛАНИЕ И ВРЕМЯ) прогоню еще раз на базе поменьше...
Согласен, если бы я взял другую базу, например где много-много мелких таблиц, результаты могли бы быть несколько отличными от этих, хотя, я считаю, не на много, и общая картина сохранится.
Делайте выводы, господа
