4.9 KiB
🚀 MySQL to PostgreSQL Migration Tool
Benvenuto! Questo è il tuo punto di partenza per utilizzare il migration tool.
📋 Indice Rapido
Per gli Impazienti (5 minuti)
→ Vai a QUICKSTART.md
Per i Dettagli Completi
→ Vai a README.md
Per un Esempio Pratico
→ Vai a EXAMPLE_WORKFLOW.md
Per Capire Come è Fatto
→ Vai a IMPLEMENTATION_SUMMARY.md
🎯 Cosa Puoi Fare
1️⃣ Migrare il Database
python main.py setup --create-schema # Setup schema
python main.py migrate full # Migrare tutti i dati
2️⃣ Sincronizzare i Cambiamenti
python main.py migrate incremental # Migrare solo i nuovi record
3️⃣ Testare le Performance
python main.py benchmark # Confronto MySQL vs PostgreSQL
4️⃣ Verificare la Configurazione
python main.py info # Mostra settings
📚 Documentazione Disponibile
| File | Contenuto | Leggi Se... |
|---|---|---|
| README.md | Guida completa (600+ linee) | Vuoi tutto |
| QUICKSTART.md | Setup in 5 minuti | Hai fretta |
| EXAMPLE_WORKFLOW.md | Scenario reale step-by-step | Vuoi un esempio |
| IMPLEMENTATION_SUMMARY.md | Dettagli tecnici | Sei developer |
⚡ Setup Rapido
1. Installazione
./install.sh
source venv/bin/activate
2. Configurazione
cp .env.example .env
# Edita .env con i tuoi dettagli
3. Crea PostgreSQL (opzionale)
bash scripts/incus_setup.sh pg-server password123
4. Esegui Migrazione
python main.py setup --create-schema
python main.py migrate full
🔍 Trovare Quello che Serve
Ho Domande su...
Come installare? → QUICKSTART.md - Setup
Come migrare i dati? → EXAMPLE_WORKFLOW.md - Migrazione
Come fare query su JSONB? → README.md - Query su JSONB oppure QUICKSTART.md - Esempi Query
Qual è la struttura JSONB? → README.md - Trasformazione Dati
Come fare il benchmark? → README.md - Benchmark
Come si fa la migrazione incrementale? → QUICKSTART.md - Migrazioni Periodiche
Cosa fare se c'è un errore? → README.md - Troubleshooting
Come funziona internamente? → IMPLEMENTATION_SUMMARY.md
📦 Cosa Contiene il Tool
Funzionalità
✅ Migrazione completa (full) ✅ Migrazione incrementale (delta) ✅ Trasformazione JSONB automatica ✅ Benchmark MySQL vs PostgreSQL ✅ Partizionamento nativo PostgreSQL ✅ GIN indexes per JSONB ✅ Progress tracking ✅ Logging con Rich
Script Helper
✅ install.sh - Setup rapido
✅ scripts/incus_setup.sh - PostgreSQL container
✅ scripts/validate_migration.sql - Validazione dati
✅ scripts/setup_cron.sh - Scheduling automatico
Comandi CLI
✅ setup - Crea schema
✅ migrate full - Migrazione completa
✅ migrate incremental - Migrazione delta
✅ benchmark - Performance test
✅ info - Mostra config
🎓 Primi Passi
Passo 1: Leggi il QUICKSTART
Apri QUICKSTART.md per un setup veloce.
Passo 2: Configura .env
Copia .env.example a .env e inserisci le tue credenziali.
Passo 3: Esegui Installazione
./install.sh
Passo 4: Verifica Configurazione
python main.py info
Passo 5: Setup Schema PostgreSQL
python main.py setup --create-schema
Passo 6: Migra i Dati
python main.py migrate full
Passo 7: Test Performance
python main.py benchmark
💡 Tips
- Migrazione lenta? Aumenta
BATCH_SIZEin.env - Vuoi solo una tabella? Usa
--table RAWDATACORcon i comandi - Primo test? Usa
--dry-runper vedere cosa verrebbe fatto - Automatizzare? Usa
scripts/setup_cron.shper scheduled sync
📞 Aiuto
Se hai domande:
- Leggi il README.md completo
- Consulta EXAMPLE_WORKFLOW.md per scenario reale
- Guarda IMPLEMENTATION_SUMMARY.md per dettagli tecnici
- Controlla la sezione Troubleshooting nel README
✅ Checklist Prima di Partire
- Ho Python 3.10+
- Ho MySQL e PostgreSQL disponibili
- Ho copiato .env.example a .env
- Ho configurato credenziali in .env
- Ho eseguito
./install.sh - Ho testato
python main.py infocon successo
Se tutti i checkmark sono spuntati, sei pronto!
Buona migrazione! 🎉
Domande? Consulta la documentazione qui sopra.