Дамп базы данных с 1gb

· На чтение уйдёт 1 минута · (182 слова)

У моего клана в игре Берсерк-Онлайн закончился хостинг и пропал человек, который этим всем занимался — было принято решение не продлевать хостинг на 1gb за полторы тыщи, а утащить сайт ко мне на сервер в Хецнере. В принципе, есть ещё вариант с Таймвебом, но я не уверен, что буду продлевать там хостинг. Хостинг хороший, но зачем он нужен, если у меня и свой сервер есть? :).

С сайта забрать что-то нереально, кроме как через шелл: скорости по ftp дрянные, а даже какой-нибудь дамп базы через phpmyadmin забрать нельзя в связи с окончанием оплаченного периода. В итоге при помощи tar отлично сдампил каталог с файлами, а вот с базой возникла проблема. Всё подвисает при дампе некой таблицы decklists. К слову, в ней всего 17 строк.

Как я узнал про 17 строк? Очень просто. Подключаюсь к базе при помощи консольного клиента mysql, запускаю SELECT * FROM decklists; и всё висит. Ctrl+C, запрос прерывается, 17 записей. Перебор ключей для mysqldump ничего полезного мне не принёс, однако помог один интересный проект: mysqldump-php.

Решение оказалось простым и элегантным:

$dump = new MySQLDump('gb_x_bo_elXXX','gb_x_bo_elXXX','XXXXXXXXX','mysql38.1gb.ru', $dumpSettings);
$dump->start('forum_dump.sql');

Всем всё дампится!

Полезное