Перейти к основному содержимому

⚙️ Дампы Альфапартнерс

🚀 Процесс создания дампов

1. Подключение к серверу

ssh {username}@{alfabank_server_ip}

Важно: IP сервера можно запросить у DevOps-отдела или другого разработчика.

После подключения выполните:

sudo su - alfapartners-halfdump

Зачем: перейти под пользователя, обладающего правами и скриптами для генерации дампов.


2. Генерация дампа

▶️ Для проекта «Альфапартнерс»

~/dump-half.sh

▶️ Для проекта «А-Агент»

~/dump-half-agent.sh

Результат:

  1. Делает дамп с production-базы.
  2. Обезличивает данные.
  3. Загружает их на stage.
  4. Создает архив с дампом в домашней директории (.sql.gz).

⬇️ Скачивание дампа на локальную машину

После создания архива он находится по пути:

  • Альфапартнерс
    /home/alfapartners-halfdump/dump.sql.gz
  • А-Агент
    /home/alfapartners-halfdump/alfa-agent-dump.sql.gz

Пример скачивания на рабочий стол локальной машины:

scp {username}@{alfabank_server_ip}:/home/alfapartners-halfdump/dump.sql.gz ~/Desktop
scp {username}@{alfabank_server_ip}:/home/alfapartners-halfdump/alfa-agent-dump.sql.gz ~/Desktop

⬆️ Загрузка дампа на дев-сервера GoCPA (Anatol)

  1. Загрузите скачанный дамп на сервер GoCPA (Anatol):

    scp ~/Desktop/dump.sql.gz {username}@{gocpa_server_ip}:/home/{username}/

    Примечание: IP сервера можно запросить у DevOps-отдела или другого разработчика.

  2. Подключитесь к серверу GoCPA (Anatol):

    ssh {username}@{gocpa_server_ip}

🏗 Раскатка дампа на дев-стенды

Внимание: Чтобы импортировать сжатый файл .gz, необходимо либо предварительно распаковать файл, либо использовать конвейерную команду gunzip -c.
Пример распаковки:

gunzip /home/{username}/dump.sql.gz
gunzip /home/{username}/alfa-agent-dump.sql

После чего у вас будет готовый файл для загрузки в базу.

1. Первый дев-стенд «Альфапартнерс»

cd /var/www/dev.partnership.demoalfa.ru/
mysql -u{db_username} -p {db_database} < /home/{username}/dump.sql

Логин, база данных и пароль найдите в .env проекта.


2. Второй дев-стенд «Альфапартнерс»

cd /var/www/dev2.partnership.demoalfa.ru/
mysql -u{db_username} -p {db_database_2} < /home/{username}/dump.sql

Логин, база данных и пароль найдите в .env проекта.


3. Проект «А-Агент»

cd /var/www/dev.alfa-agent/
mysql -u{db_username} -p {db_database} < /home/{username}/alfa-agent-dump.sql

Логин, база данных и пароль найдите в .env проекта.


4. Удалите файлы с сервера

rm -rf /home/{username}/dump.sql
rm -rf /home/{username}/alfa-agent-dump.sql

Важно: это нужно для экономии места на сервере, дамп в чистом виде может занимать около 1гб пространства на диске!


💾 Публикация дампов и уведомление команды

  1. Разместите итоговые файлы дампов (например, .sql.gz) на общедоступном диске (GoogleDrive или иной согласованный ресурс).
  2. Оповестите всех разработчиков о новых дампах, предоставив ссылки для скачивания.

⚠️ Важные замечания

  1. Обезличенные дампы не должны содержать конфиденциальных данных пользователей.
  2. Никогда не храните пароли и дампы в открытом доступе (например, в публичных репозиториях).
  3. При любых сомнениях или проблемах — согласуйте действия с ведущим разработчиком.

✅ Итог

Теперь у вас есть пошаговое руководство по созданию, скачиванию и раскатке дампов «Альфапартнерс» и «А-Агент» на все стенды.