Перейти к контенту

Бэкап и восстановление базы форума


theIggs

Рекомендуемые сообщения

Наконец-то дошли руки до важной проблемы - бэкапа. Научимся делать бэкап - сможем ещё и переносить форум с хоста на хост хоть каждый день. :)

 

Как вы, наверно, все уже знаете :D , IPB хранит все данные о пользователях, форумах, сообщениях и так далее в базе данных (обычно под управлением СУБД mySQL, но могут быть и другие варианты). Следовательно, бэкап (резервное копирование) форума предполагает прежде всего бэкап базы данных (БД).

В IPB есть встроенный инструмент для ведения бэкапов форума. Его можно найти в Админцентре -> SQL Management (Управление SQL) -> mySQL Back Up (Резервная копия mySQL). С выставленными там настройками по умолчанию можно создать обычный бэкап базы данных.

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

Поэтому ниже рассмотрим несколько альтернативных способов работы с бэкапами.

 

1. Через контрольную панель хостинга (CPanel) - объясняет Sanjak:

Я бекап делаю через контрольную панель хостинга CPanel - Резервное копирование - Скачать резервную копию базы MySQL

А если надо загрузить БД назад на хост - тогда там же Восстановление данных с резервной копии - Восстановить базу MySQL

 

2. При помощи phpMyAdmin - объясняет Dekker:

под управлением ныне модных Cpanel почти всегда установлен phpMyAdmin для работы с SQL базами. зверь хороший и полезный, правда из под Cpanel работает несколько медленней чем если бы был установлен отдельным скриптом.

 

для удобства на первой же странице phpMyAdmin установите язык на котором вам с ним удобней будет общаться. слева у вас будет окошко с предложением выбрать базу с которой хотите работать, выбираем базу инвижина (как там вы ее обозвали ). выбрали, выгрузилась следующая страница, на ней нас интересует вкладка "Экспорт" (вверху страницы), НИЧЕГО не трогаем если не знаем что делать с окошками и галками которые появились на следующей после нажатия "Экспорт" страницы. нас интересует только "Сжатие" внизу страницы, три варианта - без сжатия, архивировать в zip, архивировать в gzip. ну без сжатия это оставим монстрам потому что при выборе этого варианта вам просто в окно броузера выгрузит всю вашу базу в текстовом виде, потом это можно все выделить и сохранить (через тернии, но все таки к звездам). я обычно выбираю "архивировать в gzip" потом жмем кнопку "Пошел". после этого у вас вежливо осведомяться, а куда собственно "Пошел", в смысле куда сохранять, выбираем место на диске куда сохранять и сохраняем. дальнейшее в руках вашего провайдера и успех будет зависеть от толщины канала, а также от размера вашей базы.

 

случилось ... все пропало, все погибло, три магнитофона импортных ... вообщем все что нажито вашим непосильным трудом и флудеров вашего форума.

идем опять же по знакомой тропе к phpMyAdmin. если пропало только содержимое базы, а имя осталось, тогда в левом окошке выбираем имя погибшей базы. далее на следующей странице нас интересует вкладка "SQL", жмем. выбираем "Или Местораположение текстового файла" (вот чем ни разу не интересовался можно ли сразу архив затолкать, не было возможности). вот в этом окошке указываем место где у вас на диске храниться предварительно распакованый файл с базой. и давим знакомый клавиш "Пошел". через некоторое время будет счастье в виде восстановленной базы вашего форума.

Где взять phpMyAdmin - спрашивайте у хостера. Если у хостера phpMyAdmin не установлен (и не планируется) - вы можете поставить его сами по статье: Как поставить phpMyAdmin (Quick Guide)

 

3. При помощи Site Keeper Dumper LE авторства zapimir.

Если у вас SK Dumper запустился и нормально работает - это самый лучший способ бэкапа и восстановления баз!

Обсуждаем тут: Site Keeper Dumper LE

Качаем последнюю версию тут: http://zapimir.net/skdumper/

Могут быть подводные камни - поясняет alien200304:

Главное, в самом скрипте (dumper.php) нужно исправить DBHOST (например, sql.amillo.net) и в DBNAMES написать имя базы (например, alien200304_33), кроме того папку backup нужно создать вручную по ftp (можно залить её вместе с дампом с локального компа), иначе будут возникать ошибки, ну и следить за тем чтобы время работы скрипта не превышало 30 секунд, иначе делать дампы меньше. Gzip и Bzip2 на amillo не включены, так что придется работать с бекапом без сжатия.

 

4. Через shell - описывает d1pro:

Примерно так.

Создание бэкапа:

mysqldump --opt --password=pass database_name > path/to/file.sql

Восстановление бэкапа (при условии, что файлик уже лежит на сервере):

mysql --user=user --password=pass database_name < path/to/file.sql

 

У меня на cron висит бэкап на другой хостинг:

mysqldump --opt --password=local_pass local_db | mysql --host=another_host --user=user --password=pass db_name

Весит как раз в месяц :)... Постоянно делать будете, все заглохнет нафиг ;)...

Shell предполагает, что вы как минимум среднепродвинутый юзер :), поэтому в случае чего mysql -? и mysqldump -? помогут.

При желании можно также юзать утилиту mysqlimport, которая лежит в каталоге со всеми бинарными файлами MySQL.

 

Можно тут же сжать бэкап, чтоб качать было меньше:

gzip path/to/file.sql

 

Если возникли вопросы или ошибки при работе - внимательно перечитайте эту тему! [ссылка для просмотра темы целиком]

Ссылка на комментарий
Поделиться на других сайтах

Я бекап делаю через контрольную панель хостинга CPanel - Резервное копирование - Скачать резервную копию базы MySQL

А если надо загрузить БД назад на хост - тогда там же Восстановление данных с резервной копии - Восстановить базу MySQL

Ссылка на комментарий
Поделиться на других сайтах

Народ! Хочу попросить - опишите свои способы как следует, от и до. А отрывочными сведениями кидаться не надо, это новичкам не поможет. :D
Ссылка на комментарий
Поделиться на других сайтах

У меня backup создан средставми phpMyAdmin (Экспорт) , но в нем я хоть убей не могу найти функцию "Импорт" или "Восстановить". Нет там такого. Каким образом восстанавливается база из ".SQL" файла????? :D
Ссылка на комментарий
Поделиться на других сайтах

Anna

закладочка в пхпмайадмине есть. И зовется она SQL.

Там вьібираеш "Обзор", находиш файл (бекап базьі) і жмеш "ОК"

 

theIggs

опишите свои способы как следует, от и до.

Я нормально написал, или уточнить больше?

Ссылка на комментарий
Поделиться на других сайтах

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

 

под управлением ныне модных Cpanel почти всегда установлен phpMyAdmin для работы с SQL базами. зверь хороший и полезный, правда из под Cpanel работает несколько медленней чем если бы был установлен отдельным скриптом.

 

для удобства на первой же странице phpMyAdmin установите язык на котором вам с ним удобней будет общаться. слева у вас будет окошко с предложением выбрать базу с которой хотите работать, выбираем базу инвижина (как там вы ее обозвали ). выбрали, выгрузилась следующая страница, на ней нас интересует вкладка "Экспорт" (вверху страницы), НИЧЕГО не трогаем если не знаем что делать с окошками и галками которые появились на следующей после нажатия "Экспорт" страницы. нас интересует только "Сжатие" внизу страницы, три варианта - без сжатия, архивировать в zip, архивировать в gzip. ну без сжатия это оставим монстрам потому что при выборе этого варианта вам просто в окно броузера выгрузит всю вашу базу в текстовом виде, потом это можно все выделить и сохранить (через тернии, но все таки к звездам). я обычно выбираю "архивировать в gzip" потом жмем кнопку "Пошел". после этого у вас вежливо осведомяться, а куда собственно "Пошел", в смысле куда сохранять, выбираем место на диске куда сохранять и сохраняем. дальнейшее в руках вашего провайдера и успех будет зависеть от толщины канала, а также от размера вашей базы.

 

случилось ... все пропало, все погибло, три магнитофона импортных ... вообщем все что нажито вашим непосильным трудом и флудеров вашего форума.

идем опять же по знакомой тропе к phpMyAdmin. если пропало только содержимое базы, а имя осталось, тогда в левом окошке выбираем имя погибшей базы. далее на следующей странице нас интересует вкладка "SQL", жмем. выбираем "Или Местораположение текстового файла" (вот чем ни разу не интересовался можно ли сразу архив затолкать, не было возможности). вот в этом окошке указываем место где у вас на диске храниться предварительно распакованый файл с базой. и давим знакомый клавиш "Пошел". через некоторое время будет счастье в виде восстановленной базы вашего форума.

 

уф ... кто плотнее работал с версией phpMyAdmin помоему новой, там все таки есть галки при закачке дампа "Автодетект" "Нет" "архивировать в gzip" значитвсе таки можно подсовывать дамп не только в текстовом виде, а и в архиве ? не для себя, для других прошу, поскольку под safe_mode архив скорей всего точно распаковать не получиться, или я не прав ?

Ссылка на комментарий
Поделиться на других сайтах

  • 3 недели спустя...
PHP и CPANELX у меня на хосте нет, а бэкап сделать как-то надо, через резервную копию SQL ничего не получается где-то после 50% у меня зависает комп. :D
Ссылка на комментарий
Поделиться на других сайтах

Site Keeper Dumper LE - The best! Простенький скрипт, не требует устнановки и настройки, просто залейте не сервер и все! Все на русском, крайне понятный интерфейс. Всем советую! http://zapimir.net/skdumper/
Ссылка на комментарий
Поделиться на других сайтах

Borland_delphi_6

 

Да хорошея но есть одно но она работает только с Internet Explorer или на его движке!

А в Mozille не работает! :D

Ссылка на комментарий
Поделиться на других сайтах

Aleks

если делал Site Keeper Dumper LE

то просто внизу есть функция вот еи и востанавливают

Ссылка на комментарий
Поделиться на других сайтах

heeeeeeeeeeeeeeeelp! вопрос жизни и смерти!

сделал дамп и стал счастливым обладателем файла с расширением .sql

а что мне с ним теперь делать?! как мне засунуть его содержимое на сервак в замен того, что есть??!

так и не понял, как это сделать через phpMyAdmin и MySQL Snap, а Site Keeper Dumper LE я не смог заставить работать на агаве и амилло

Ссылка на комментарий
Поделиться на других сайтах

Думаю, уже успел всем надоесть...

На локальном хосте абсолютно все работает, но вот на бесплатныз серваках....

 

Это о чем?

 

Warning: main(./libraries/select_lang.lib.php): failed to open stream: No such file or directory in /home/d/ddrc.h11.ru/WWW/phpMyAdmin/libraries/common.lib.php on line 146

 

Fatal error: main(): Failed opening required './libraries/select_lang.lib.php' (include_path='.:/usr/local/share/pear') in /home/d/ddrc.h11.ru/WWW/phpMyAdmin/libraries/common.lib.php on line 146

Ссылка на комментарий
Поделиться на других сайтах

и еще: Site Keeper Dumper LE на агаве и амилло после авторизации просто ничего не открывает...

Скачай обновленную версию, она выдает сообщения о проблемах, возникших при подключении. Скорее всего проблема в том, что у них сервер MySQL на отдельном серваке стоит.

Ссылка на комментарий
Поделиться на других сайтах

Час от часу не легче. Установил phpMyAdmin на агаве и амилло. Сделал дамп на агаве, хотел уже загружать на амилло, но появляется надпись acces denied...
Ссылка на комментарий
Поделиться на других сайтах

Хотите псмеяться?

Правдивая история о том, как я переносил форум.

Сделал на агаве дамп при помощи phpMyAdmin. Через него же создал новую базу у себя на localhost'е. Сдампил ее Dumper'ом. Полез на амиллу и с 5-8 раза смог залить этот дамп phpMyAdmin'ом. Забавнее всего то, что ни один другой вариант не работает...

Ссылка на комментарий
Поделиться на других сайтах

Забавнее всего то, что ни один другой вариант не работает

Скачай обновленную версию дампера, там сделаны небольшие правки для работы с "урезанными" серваками (проверено, на amillo).

 

Главное нужно исправить DBHOST (например, sql.amillo.net) и в DBNAMES написать имя базы (например, alien200304_33), кроме того папку backup нужно создать вручную по ftp (можно залить её вместе с дампом с локального компа), иначе будут возникать ошибки, ну и следить за тем чтобы время работы скрипта не превышало 30 секунд, иначе делать дампы меньше. Gzip и Bzip2 на amillo не включены, так что придется работать с бекапом без сжатия

Ссылка на комментарий
Поделиться на других сайтах

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.