English | Português
A professional CLI tool to synchronize specific MySQL tables between different environments (e.g., Production RDS to Localhost) with structure detection and progress visualization.
- Smart Sync: Automatically creates missing tables or adds new columns to existing ones.
- Visual Progress: Real-time progress bars and status panels via
rich. - Memory Efficient: Streams large data in chunks to save RAM.
- Global Access: Command-line support to run from any directory.
- Centralized Config: Manage credentials and aliases in a single
config.json.
- Install dependencies:
pip install mysql-connector-python rich
- Configure
config.jsonwith your source (origem) and destination (destino) credentials. - Run:
python sync-db.py
-t, --tables: Sync specific tables (e.g.,-t user logs).-f, --file: Sync tables from a custom TXT/CSV file.-s, --showtables: List identified tables without syncing (Dry run).-l, --logs: Show the last 20 log entries.
To use sinc-db from any folder:
- Add the project folder path to your System Environment Variables (PATH).
- Open a new terminal and type:
sinc-db -t table_name
Ferramenta CLI para sincronização inteligente de tabelas MySQL entre ambientes (ex: Produção para Local), com detecção de estrutura e progresso visual.
- Sincronização Inteligente: Cria tabelas ausentes ou adiciona novas colunas automaticamente.
- Progresso Visual: Barras de progresso e painéis coloridos via
rich. - Eficiência: Processa grandes volumes de dados em pedaços (chunks).
- Acesso Global: Suporte para execução via terminal em qualquer diretório.
- Configuração Central: Credenciais e apelidos gerenciados no
config.json.
- Instale as dependências:
pip install mysql-connector-python rich
- Configure o
config.jsoncom as credenciais deorigemedestino. - Execute:
python sync-db.py
-t, --tables: Sincroniza tabelas específicas (ex:-t usuario logs).-f, --file: Sincroniza tabelas de um arquivo TXT/CSV personalizado.-s, --showtables: Apenas lista as tabelas (sem sincronizar).-l, --logs: Exibe as últimas 20 entradas de log.
Para usar o comando sinc-db em qualquer pasta:
- Adicione o caminho da pasta do projeto às Variáveis de Ambiente (PATH) do Sistema.
- Abra um novo terminal e digite:
sinc-db -t nome_da_tabela