Виртуальная машина битрикс позволяет быстро и просто развернуть готовую среду по верх операционной системы Centos для запуска проекта Bitrix24 или сайта на CMS Bitrix. При этом установленная CMS Bitrix имеет встроенный механизм резервного копирования, но когда проект перерастает все разумные пределы имеет смысл использовать резервное копирование при помощи виртуальной машины Битрикс (ВМ Битрикс)При резервном копировании при помощи VM Bitrix — фалы с backup-архивом по умолчанию помещаюстя в деректорию сервера /home/bitrix/backup/archive. При этом файлы резервных копий могут именоваться как www_backup_sitemanager_DD.MM.YYYY_случайная_строка.tar.gz
Итак, как же правильно восстановить копию проекта из резервной копии:
1.Распаковываем резервную копию проекта в директорию сайта:
Переходим в директорию с резервной копией
1 2 3 |
cd /home/bitrix/backup/archive |
Запускам распаковку проекта в директорию сайта
1 2 3 |
tar -xvfv www_backup_sitemanager_DD.MM.YYYY_случайная_строка.tar.gz -C /home/bitrix/www/ |
Если проект большой, то это может занять длительное время. При этом у вас может возникнуть нормальное желание исключить некоторые папки архива. Для исключения из распаковки папок можно дополнить команду, следующей записью
1 2 3 |
tar -xvfv www_backup_sitemanager_DD.MM.YYYY_случайная_строка.tar.gz --exclude=./upload/crm --exclude=./upload/mail -C /home/bitrix/www/ |
Здесь мы исключили папки crm и mail из файлов которые попадут в директорию сайта. Обратите внимание, что бы верно записать путь до исключаемой папки «./upload/crm» — нужно воспользоваться командой:
1 2 3 |
tar -tz -f www_backup_sitemanager_DD.MM.YYYY_случайная_строка.tar.gz |
Команда выведет всё содержимое архива, где и будет виден верный путь до папок внутри архива
2. Восстанавливаем базу данных MySQL
Дамп базы данных при резервном копировании средствами VMbitrix — размещается в директории /home/bitrix/ в виде двух файлов — с окончанием *.sql и *_after_connect.sql.
Так же данные файлы находятся в самом архиве в директории /home/bitrix/ — от корня архива, при необходимости их можно извлечь от туда.
Если база данных не нарушена — для восстановления достаточно дать команду на восстановление из файла *_after_connect.sql
1 2 3 |
mysql sitemanager < www_backup_sitemanager_DD.MM.YYYY_случайная_строка_after_connect.sql |
При необходимости полного восстановления базы данных необходимо последовательно выполнить несколько команд с файлами бд
1 2 3 |
mysql sitemanager < www_backup_sitemanager_DD.MM.YYYY_случайная_строка.sql |
1 2 3 |
mysql sitemanager <www_backup_sitemanager_DD.MM.YYYY_случайная_строка_after_connect.sql |
3. Если вы разворачиваете копию на другом сервере под управлением другой виртуальной машины Битрикс
В этом случае пароль (возможно и пользователь) базы данных (по умолчанию sitemanager) будут отличаться от пароля (возможно и пользователя) который у вас прописан в конфиге восстанавливаемой копии проекта.
Старый пароль от бд сайта можно подсмотреть в файле проекта /home/bitrix/www/bitrix/.settings.php и (или) /home/bitrix/www/bitrix/php_interface/dbconn.php
Для изменения пароля пользователя bitrix0 (которые заводится автоматически при разворачивании Bitrix VM) необходимо выполнить команду:
Необходимо поменять пароль для пользователе — bitrix0, привести в соответствие с паролем указанным в конфигурационных фалах:
1 2 3 |
mysql -uroot SET PASSWORD FOR 'bitrix0'@'localhost' = PASSWORD('пароль_из_файла_восстанавливаемого_проекта'); |
Или выполните последнюю команду в два этапа:
Подключитесь к mysql из консоли
1 2 3 |
mysql -uroot -p |
Сервер запросит у вас пароль root. Если вы забыли его, можно увидеть его в файле /root/.my.cnf
Измените пароль
1 2 3 |
SET PASSWORD FOR 'bitrix0'@'localhost' = PASSWORD('пароль_из_файла_восстанавливаемого_проекта'); |
После этой операции, процесс восстановления резервной копии Bitrix созданной средствами ВМ можно считать завершённым.
Для справки (не обязательно)
Если вам нужно создать ещё одно пользователя БД и дать ему доступ для подключения с внешних IP, можно поступить следующим образом:
Создать пользователя командой MySQL
1 2 3 |
GRANT ALL PRIVILEGES ON `sitemanager`.* TO new_user@'%' IDENTIFIED BY 'new_password'; |
Дать созданному пользователю права на подключения к БД с определённого IP локальной сети
1 2 3 |
GRANT SELECT ON sitemanager.* TO new_user@192.168.0.60 IDENTIFIED BY 'new_password'; |
sitemanager — база Битрикс24 по умолчанию