+1 голос
от (610 баллов) в категории Обслуживание
открыт от
Иногда приходится делать резервную копию базы данных PrestaShop перед различными изменениями, например, импортом данных через инструмент импорта PrestaShop, установкой модуля и пр. Как это делается и какие способы есть?

1 Ответ

+2 голосов
от (610 баллов)
выбран от
 
Лучший ответ

Приведено несколько способов создания резервной копии (или SQL-дампа) базы данных PrestaShop.

Самым надежным считаю четвёртый способ, но он не всегда удобный. Не самым надежным считаю третий способ (через инструмент панели управления) – например, за все время у меня было несколько случаев, когда ISPmanager выгружал неполный SQL-дамп.

Способ первый: через встроенный в PrestaShop инструмент

В админке переходим в:

  • для PS1.3-1.4: «Tools -> DB Backup»
  • для PS1.5-1.6: «Advanced Parameters -> DB Backup»

Устанавливаем требуемые параметры:

  • «Ignore statistics tables» (не включать в бэкап данные о статистике) – отключите, если вы собираете статистику средствами PrestaShop и она вам нужна;
  • «Backup all tables»: только у PS1.3 и более ранних версий PrestaShop; это тоже самое, что и «Ignore statistics tables», но только вопрос поставлен реверсно;
  • «Drop existing tables during import»: только у PS1.4 и более поздних версий PrestaShop; означает - удалять существующие таблицы, когда дамп будет импортироваться в базу данных, которая уже содержит таблицы; выбрать «да», если вы будете импортировать созданный ранее SQL-дамп в существующую базу данных, уже содержащую таблицы PrestaShop.

Делаем бэкап. Теперь бэкап хранится в архиве, как правило, Gzip: /admin/backups/*.sql.gz

Его можно скачать через тот же интерфейс инструмента или оставить как-есть.

Способ второй: через инструмент PhpMyAdmin

Доступ к инструменту PhpMyAdmin вам должен быть предоставлен хостинг-провайдером, как правило, через панель управления хостинг-услугой приводится на него ссылка. PhpMyAdmin можно назвать «де-факто» инструментом по работе с базами данных, поэтому он почти всегда есть в распоряжении у клиента хостера; инструкции по работе с этим инструментом – полно, в том числе включая инструкции по созданию SQL-дампов баз данных, в силу этого не привожу подробную инструкцию.

Краткая инструкция по созданию SQL-дампа базы данных через PhpMyAdmin:

  • открыть инструмент PhpMyAdmin;
  • выбрать базу данных сайта на PrestaShop;
  • нажать на вкладку «Экспорт»;
  • указать параметры экспорта (для большинства случаев оставить параметры как есть – приемлемый выбор);
  • нажать «OK» и дождаться появление окна загрузки SQL-дампа, а затем указать, куда сохранить файл у себя на компьютере (процедура займет некоторое время, которое зависит от размера файла и скорости соединения с Интернет).

Способ третий: через инструмент панели управления

Здесь, какие панели управления имеются в виду? - ISPmanager, CPanel и прочие.

Вы найдете множество инструкций в Интернет о том, как сделать SQL-дамп базы данных для той панели управления, которая вам предоставлена хостинг-провайдером. Но все же приведу краткую инструкцию для одной из них, которая популярна у нас в России и странах СНГ.

Краткая инструкция создания SQL-дампа в ISPmanager:

  • через меню перейти в «Базы данных»;
  • выбрать базу данных из списка;
  • в горизонтальном меню (выше списка) нажать кнопку «Скачать дамп»;
  • нажать «OK» и дождаться появление окна загрузки SQL-дампа, а затем указать, куда сохранить файл у себя на компьютере (процедура займет некоторое время, которое зависит от размера файла и скорости соединения с Интернет).

Способ четвертый: через стандартную консольную утилиту mysqldump

Для использования утилиты mysqldump необходимо выполнить команду в консоли (шелле), но предварительно понадобится «зайти» на сервер через SSH или VNC-клиент (не все хостинг провайдеры предоставляют доступ к серверу по SSH, а поддержка VNC есть только у выделенных серверов и VDS с виртуализацией KVM или XEN):

mysqldump --user=DBUSER --password=PASSWORD DBNAME >prestashop.sql

в этом примере нужно заменить указанные параметры на верные значения:

  • DBUSER – пользователь базы данных;
  • PASSWORD – пароль указанного пользователя;
  • DBNAME – название базы данных, SQL-дамп которой требуется получить;

prestashop.sql – название файла SQL-дампа, который появится в текущей директории (из которой выполняется команда) после выполнения команды.

Добро пожаловать на сайт. Здесь можно задавать вопросы по CMS PrestaShop и получать на них ответы.
...