Ми написали сценарій для обробки відвалів БД для розгалуження. Прочитайте цю статтю .
Основний принцип полягає в тому, що він зчитує дані local.xml
для отримання облікових даних БД, а потім скидає дані на цій основі. Він розбиває дамп на дві частини, лише структура, а потім дані. Але ключовим є те, що він прискорює звичайний процес скидання, пропускаючи несуттєві дані , і найважливіше запобігає будь-яким блокуванням таблиць під час дампа, який інакше заблокував / повісив ваш веб-сайт у реальному часі.
Коли у вас є дамп MySQL, ви можете легко змінити URL-адресу просто за допомогою sed
sed -i 's/www.mydomain.com/staging.mydomain.com/g' ./var/db.sql
Потім запустіть імпорт mysql у вашу нову БД.
Тож без сценарію дуже основна версія виглядала б так.
mysqldump -hHostname -uUsername LiveDbname -p > db.sql
sed -i 's/www.mydomain.com/staging.mydomain.com/g' db.sql
mysql -hHostname -uUsername DevDbname -p < db.sql
Зовсім немає причин видаляти файл local.xml або перезапустити інсталятор, якщо таким чином змінити URL-адреси в БД.
Весь процес розгалуження добре висвітлений у нашому посібнику з MaITO GIT . Це хороший процес для створення галузей розвитку, однак зменшує живу БД на значні запаси. Тож тести не будуть повністю такими ж, як на веб-сайті в прямому ефірі.
Отже, виконуючи дамп ванільної БД, замінюючи sed, імпорту БД достатньо для розміщення сайту. І буде відображати / відповідати веб-сайту наживо як можна ближче.
Щодо запобігання спілкуванню з клієнтами - ми ніколи не вважали це необхідним, оскільки ми завжди створюємо облікові записи для тестування, ніколи не використовуючи для тестування реальні замовлення клієнтів.