58 lines
1.8 KiB
Bash
58 lines
1.8 KiB
Bash
|
|
#!/bin/bash
|
|||
|
|
|
|||
|
|
# Проверяем аргументы
|
|||
|
|
if [ -z "$1" ]; then
|
|||
|
|
echo "📥 Импорт базы данных"
|
|||
|
|
echo ""
|
|||
|
|
echo "Использование:"
|
|||
|
|
echo " ./import_db.sh <путь_к_файлу_базы>"
|
|||
|
|
echo ""
|
|||
|
|
echo "Пример:"
|
|||
|
|
echo " ./import_db.sh backups/export_lichess_bot_20251028_123456.db"
|
|||
|
|
echo " ./import_db.sh /path/to/lichess_bot.db"
|
|||
|
|
echo ""
|
|||
|
|
exit 1
|
|||
|
|
fi
|
|||
|
|
|
|||
|
|
BACKUP_FILE="$1"
|
|||
|
|
|
|||
|
|
# Проверяем существует ли файл
|
|||
|
|
if [ ! -f "$BACKUP_FILE" ]; then
|
|||
|
|
echo "❌ Файл не найден: $BACKUP_FILE"
|
|||
|
|
exit 1
|
|||
|
|
fi
|
|||
|
|
|
|||
|
|
# Проверяем что это SQLite файл
|
|||
|
|
if ! file "$BACKUP_FILE" | grep -q "SQLite"; then
|
|||
|
|
echo "❌ Это не файл базы данных SQLite!"
|
|||
|
|
exit 1
|
|||
|
|
fi
|
|||
|
|
|
|||
|
|
echo "📥 Импорт базы данных из: $BACKUP_FILE"
|
|||
|
|
echo ""
|
|||
|
|
|
|||
|
|
# Создаем директорию если не существует
|
|||
|
|
mkdir -p LichessClientTG_bot/data
|
|||
|
|
mkdir -p backups
|
|||
|
|
|
|||
|
|
# Делаем бэкап существующей базы если она есть
|
|||
|
|
if [ -f "LichessClientTG_bot/data/lichess_bot.db" ]; then
|
|||
|
|
echo "💾 Создание бэкапа существующей базы..."
|
|||
|
|
cp LichessClientTG_bot/data/lichess_bot.db "backups/backup_before_import_$(date +%Y%m%d_%H%M%S).db"
|
|||
|
|
echo "✅ Бэкап создан"
|
|||
|
|
fi
|
|||
|
|
|
|||
|
|
# Копируем базу
|
|||
|
|
echo "📋 Копирование базы данных..."
|
|||
|
|
cp "$BACKUP_FILE" "LichessClientTG_bot/data/lichess_bot.db"
|
|||
|
|
|
|||
|
|
echo ""
|
|||
|
|
echo "✅ База данных импортирована!"
|
|||
|
|
echo ""
|
|||
|
|
echo "⚠️ Для применения изменений перезапустите бота:"
|
|||
|
|
echo " docker-compose restart lichess-bot"
|
|||
|
|
echo ""
|
|||
|
|
echo " Или полный перезапуск всех сервисов:"
|
|||
|
|
echo " ./start.sh"
|
|||
|
|
|