94 lines
3.0 KiB
Bash
94 lines
3.0 KiB
Bash
#!/bin/bash
|
||
# Old RogDB → RogDB 移行クイックスタート
|
||
|
||
echo "============================================================"
|
||
echo "Old RogDB → RogDB データ移行クイックスタート"
|
||
echo "============================================================"
|
||
|
||
# 実行前チェック
|
||
echo "🔍 実行前チェック..."
|
||
|
||
# Docker Composeサービス確認
|
||
if ! docker compose ps | grep -q "Up"; then
|
||
echo "❌ Docker Composeサービスが起動していません"
|
||
echo "次のコマンドでサービスを起動してください:"
|
||
echo "docker compose up -d"
|
||
exit 1
|
||
fi
|
||
|
||
echo "✅ Docker Composeサービス確認完了"
|
||
|
||
# データベース接続確認
|
||
echo "🔍 データベース接続確認..."
|
||
if ! docker compose exec app python -c "
|
||
import psycopg2
|
||
try:
|
||
conn = psycopg2.connect(host='postgres-db', database='rogdb', user='admin', password='admin123456')
|
||
print('✅ rogdb接続成功')
|
||
conn.close()
|
||
except Exception as e:
|
||
print(f'❌ rogdb接続エラー: {e}')
|
||
exit(1)
|
||
"; then
|
||
echo "❌ データベース接続に失敗しました"
|
||
exit 1
|
||
fi
|
||
|
||
# メニュー表示
|
||
echo ""
|
||
echo "📋 移行オプションを選択してください:"
|
||
echo "1) 完全移行(全rog_*テーブル)"
|
||
echo "2) 安全移行(ユーザー関連テーブル除外)"
|
||
echo "3) 統計情報のみ表示"
|
||
echo "4) テーブル一覧のみ表示"
|
||
echo "5) カスタム移行(除外テーブル指定)"
|
||
echo "0) キャンセル"
|
||
echo ""
|
||
|
||
read -p "選択 (0-5): " choice
|
||
|
||
case $choice in
|
||
1)
|
||
echo "🚀 完全移行を開始します..."
|
||
docker compose exec app python migrate_old_rogdb_to_rogdb.py
|
||
;;
|
||
2)
|
||
echo "🛡️ 安全移行を開始します(ユーザー関連テーブル除外)..."
|
||
docker compose exec -e EXCLUDE_TABLES=rog_customuser,rog_session app python migrate_old_rogdb_to_rogdb.py
|
||
;;
|
||
3)
|
||
echo "📊 統計情報を表示します..."
|
||
make migrate-old-rogdb-stats
|
||
;;
|
||
4)
|
||
echo "📋 テーブル一覧を表示します..."
|
||
make migrate-old-rogdb-dryrun
|
||
;;
|
||
5)
|
||
echo "除外するテーブル名をカンマ区切りで入力してください(例: rog_customuser,rog_session):"
|
||
read -p "除外テーブル: " exclude_tables
|
||
echo "🔧 カスタム移行を開始します..."
|
||
docker compose exec -e EXCLUDE_TABLES="$exclude_tables" app python migrate_old_rogdb_to_rogdb.py
|
||
;;
|
||
0)
|
||
echo "移行をキャンセルしました"
|
||
exit 0
|
||
;;
|
||
*)
|
||
echo "❌ 無効な選択です"
|
||
exit 1
|
||
;;
|
||
esac
|
||
|
||
echo ""
|
||
echo "============================================================"
|
||
echo "移行処理が完了しました"
|
||
echo "============================================================"
|
||
echo ""
|
||
echo "📋 移行後の確認方法:"
|
||
echo " - ログ確認: make app-logs"
|
||
echo " - DB接続: make db-shell"
|
||
echo " - 統計再表示: make migrate-old-rogdb-stats"
|
||
echo ""
|
||
echo "📖 詳細情報: MIGRATE_OLD_ROGDB_README.md"
|