1 (edited by PunBB 2018.02.26 14:33)

Topic: Pan Backup DB - Резервное копирование дампа базы данных

Всем привет! Скажите, как вы обычно создаете бекапы базы данных форума? Наверняка идете на сервер, затем в PhpMyAdmin и затем выбираете и сохраняете копию на компьютер. Так делают большинство пользователей так и делают, как я в том числе. Но признаюсь, это не очень удобно. Гораздо лучше когда можно сделать БекАп прямо из админки форума...

Расширение Pan Backup DB позволяет создавать дамп базы данных сохраняя его в файл с расширением .sql. В расширении можно ограничить максимальное количество создаваемых копий.

https://punbb.softplaza.net/uploads/images/2016/01/13/panbb_backup_db.png

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

Скачать расширение Pan Backup DB
Download pan_backup_db.zip

2

Re: Pan Backup DB - Резервное копирование дампа базы данных

Важное обновление расширения pan_backup_db.zip! Теперь можно планировать создание копий по запланированному интервалу времени.

Исправлены многие ошибки:
ereg_replace заменена на preg_replace
исправлены неопределенные переменные
экранирование некоторых элементов
защита от скачивания файла, шифрование и т.п
добавлен файл функций.

Расширение необходимо переустановить! Качать из первого поста.

3 (edited by PunBB 2016.05.11 02:09)

Re: Pan Backup DB - Резервное копирование дампа базы данных

Обновлено расширение  Pan Backup DB.

Добавлена возможность вручную создавать резервное копирование таблиц или некоторых полей таблицы. Эта функция добавлена для восстановления таких расширений как Личные сообщения, Статистика форума, Редиректные ссылки и т.п.
Так же возможно переносить таблицу частями, т.е те поля таблицы, которые необходимо.

-------
Добавлена проверка полей перед добавлением.

4

Re: Pan Backup DB - Резервное копирование дампа базы данных

PunBB wrote:

Добавлена возможность вручную создавать резервное копирование таблиц или некоторых полей таблицы. Эта функция добавлена для восстановления таких расширений как Личные сообщения, Статистика форума, Редиректные ссылки и т.п.
Так же возможно переносить таблицу частями, т.е те поля таблицы, которые необходимо.

не резервирует таблицу расширений Reputation и Thanks. Покопавшись добавил в файл recovery.php, в массив 2 строки

    'reputation',
    'thanks',

Спасибо за расширение  Default/ay

5

Re: Pan Backup DB - Резервное копирование дампа базы данных

Gornyak.alex wrote:

не резервирует таблицу расширений Reputation и Thanks. Покопавшись добавил в файл recovery.php, в массив 2 строки
КОД: Копировать Выделить всё
    'reputation',
    'thanks',

Ок! В следующей версии добавлю  Default/bf

6

Re: Pan Backup DB - Резервное копирование дампа базы данных

Сегодня перестал открываться рабочий форум, просто пустая страница, в консоли браузера:

Failed to load resource: the server responded with a status of 500 (Internal Server Error).

В логах nginx:

2016/10/17 10:21:36 [error] 2463#0: *1 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Cannot redeclare pan_get_tables_db() (previously declared in /srv/www/sitename/www/extensions/pan_backup_db/functions.php:5) in /srv/www/sitename/www/extensions/pan_backup_db/functions.php on line 17" while reading response header from upstream, client: 180.76.15.151, server: sitename.ru, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-clandf.sock:", host: "sitename.ru"

После отключение расширения, все заработало.

7

Re: Pan Backup DB - Резервное копирование дампа базы данных

rakard wrote:

PHP message: PHP Fatal error:  Cannot redeclare pan_get_tables_db() (previously declared in

Логи говорят о том, что функция пыталась вызвать саму себя. Скоро исправим.
Саасибо за багрепорт.

8 (edited by nihi1ist 2017.03.06 23:57)

Re: Pan Backup DB - Резервное копирование дампа базы данных

PunBB, а чего сразу базу целиком не копируете?

Предложения:

  • Добавить поддержку резервного копирования в облако (Яндекс дикс, Google диск и др.)

  • Добавить резервное копирование всего каталога форума.

9

Re: Pan Backup DB - Резервное копирование дампа базы данных

nihi1ist wrote:

а чего сразу базу целиком не копируете?

Разве бэкап целиком не создает? Вроде в последней версии было добавлено. Надо проверить....

10

Re: Pan Backup DB - Резервное копирование дампа базы данных

Исправлены ошибки запросов.
Добавлена функция, которой как оказалось вообще не было  Default/bn
Написал ленгвич, пока только английский.
Привел в порядок урлы.

nihi1ist wrote:

Добавить резервное копирование всего каталога форума.

Там 2 вкладки. Одна для создания бекапа всей Базы Данных. А вторая для создания бекапов отдельных таблиц.

Зачем? Поясняю:
К примеру вы вынуждены переустановить какое либо расширение, но не хотите потерять все данные, благодарности, репутацию, ЛС и т п.

Создавать бекап всех файлов на облаках пока не планировал, но мысль интересная. Хотя сразу скажу, что с яшей мы точно сотрудничать мы не будем...

Пробовал создать бекап и восстановить его на демо-форуме, все прошло успешно.
Единственная проблема: при восстановлении вручную через PhpMyAdmin, в таблице topics, в колонке moved_to были проставлены нули(0) вместо значения NULL. Если у кого будет такая проблема, то знайте, что нужно заменить значения соответственно.
А так же в таблице постов, колонка edited тоже самое были проставлены 0 вместо значения NULL.
Чем это вызвано, я пока так и не понял: то ли скрипт виноват, а то ли что то забыл выставить при восстановлении.
Просто имейте это ввиду если что то пойдет не так. В любом случае, прежде чем попробовать расширение создайте бекап вручную чз пхпадмин.
Надеюсь, что скоро доведу его до ума.

11 (edited by rakard 2016.10.17 20:51)

Re: Pan Backup DB - Резервное копирование дампа базы данных

Не переводятся:

Заголовки в меню администрирования

https://punbb.softplaza.net/uploads/images/2016/10/18/image_3.png

Ссылка на скачивание

https://punbb.softplaza.net/uploads/images/2016/10/18/image_2.png

---

Здесь:

https://punbb.softplaza.net/uploads/images/2016/10/18/image_1.png

под полем ввода наверное должно быть другое описание

Кнопка "Восстановить" смещена:

https://punbb.softplaza.net/uploads/images/2016/10/18/image_4.png

---

После создания резервной копии таблицы кнопка "Восстановить" не активна, даже если данные в таблице меняются. В коде страницы:

<input type="submit" name="restore_part" value="Восстановить" disabled>

В CSS:

input[type="submit"][disabled], input[type="button"][disabled], input[type="reset"][disabled], button[disabled] {
  border-color: #ccc;
  color: #999;
}

Перевод для расширения.

12

Re: Pan Backup DB - Резервное копирование дампа базы данных

PunBB wrote:
nihi1ist wrote:

Добавить резервное копирование всего каталога форума.

Там 2 вкладки. Одна для создания бекапа всей Базы Данных. А вторая для создания бекапов отдельных таблиц.

Вы не так поняли меня. PunBB_INFO_ICQ/smile Я имею в виду не базу, а именно каталог с файлами форума. Бывает правишь страницы, стили и прочее вручную, а бэкап забываешь сделать.

13

Re: Pan Backup DB - Резервное копирование дампа базы данных

PunBB wrote:

Создавать бекап всех файлов на облаках пока не планировал, но мысль интересная. Хотя сразу скажу, что с яшей мы точно сотрудничать мы не будем...

Я же написал.

rakard wrote:

Не переводятся:
Заголовки в меню администрирования

Подправлю недочеты. За перевод на русский отдельная благодарность.

14 (edited by nihi1ist 2016.10.17 23:49)

Re: Pan Backup DB - Резервное копирование дампа базы данных

PunBB wrote:

Я же написал.

Снова вы меня не поняли. Я вот про какие файлы:

ls /
COPYING    README.md  delete.php  extern.php   header.php  img        lang       moderate.php  register.php  search.php    viewforum.php
ChangeLog  admin      edit.php    favicon.ico  help.php    include    login.php  post.php      rewrite.php   style         viewtopic.php
README     cache      extensions  footer.php   humans.txt  index.php  misc.php   profile.php   robots.txt    userlist.php

15

Re: Pan Backup DB - Резервное копирование дампа базы данных

nihi1ist wrote:

Я вот про какие файлы:

не вижу проблемы в этом:

function PanGetAllPathFiles($path, $pattern = '*', $flags = GLOB_NOSORT, $depth = 0)
{
   $matches = array();
   $folders = array(rtrim($path, DIRECTORY_SEPARATOR));

   while($folder = array_shift($folders)) 
   {
      $matches = array_merge($matches, glob($folder.DIRECTORY_SEPARATOR.$pattern, $flags));
      if($depth != 0) 
      {
         $moreFolders = glob($folder.DIRECTORY_SEPARATOR.'*', GLOB_ONLYDIR);
         $depth   = ($depth < -1) ? -1: $depth + count($moreFolders) - 2;
         $folders = array_merge($folders, $moreFolders);
      }
   }
   return $matches;
}

$ArrAllFiles = PanGetAllPathFiles(FORUM_ROOT, '*', GLOB_NOSORT, -1);

$zip = new ZipArchive();
$zip->open('backap_'.date('Y_m_d_H_i_s', time()).'.zip', ZIPARCHIVE::CREATE);
foreach($ArrAllFiles as $Key => $FileName)
{
   if(!is_dir($FileName))
   {
      $FileName = str_replace('./', '', $FileName);
      $zip->addFile($FileName); 
   }
}
$zip->close(); 

отправлять в облако еще не пробовал.

16

Re: Pan Backup DB - Резервное копирование дампа базы данных

Если это расширение находится в "устаревших", значит, для 1.4.5 - его качать уже нельзя. 
Не будет работать. Так?
А как тогда найти его "новую" версию или замену?
или, если 145 - это 144 с исправленными ошибками, то - будет?

$matches[2]

P.S. если у меня форум 145, а я поставил это расширение, то - удалять его?

17

Re: Pan Backup DB - Резервное копирование дампа базы данных

Не обязательно. Это расширение находится в устаревших по причине недоработок.

Во-первых, при создании бэапа по времени выдавало ошибки, находил в логах, протестить так и не удалось.

Во-вторых, при восстановлении базы данных, на сколько помню была проблема со значениями NULL в некоторых колонках, уже не помню в которых. Недоработок немного, но они могут создать много головной боли при восстановлении.

18

Re: Pan Backup DB - Резервное копирование дампа базы данных

Т,е., недоработано и пока - не применять ...
ок