Skip to content

fadjar340/sybase-proxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sybase to PostgreSQL Proxy

Enterprise-grade migration solution with web interface and authentication.

Project Structure

sybase-postgres-proxy/
├── .env.example
├── docker-compose.yml
├── README.md
├── proxy/
│   ├── src/
│   │   ├── __init__.py
│   │   ├── main.py
│   │   ├── query_handler.py
│   │   ├── connection_manager.py
│   │   └── protocol_handler.py
│   ├── Dockerfile
│   └── requirements.txt
├── migration/
│   ├── src/
│   │   ├── __init__.py
│   │   ├── migrator.py
│   │   ├── schema_translator.py
│   │   ├── data_mover.py
│   │   └── sp_converter.py
│   ├── Dockerfile
│   └── requirements.txt
├── webapp/
│   ├── backend/
│   │   ├── src/
│   │   │   ├── main.py
│   │   │   ├── routes/
│   │   │   │   ├── migration.py
│   │   │   │   └── auth.py
│   │   │   └── models.py
│   │   ├── Dockerfile
│   │   └── requirements.txt
│   └── frontend/
│       ├── src/
│       │   ├── components/
│       │   │   ├── MigrationWizard.jsx
│       │   │   └── StatusMonitor.jsx
│       │   ├── App.js
│       │   └── index.js
│       ├── public/
│       │   └── index.html
│       ├── Dockerfile
│       ├── package.json
│       └── nginx.conf
└── scripts/
    ├── entrypoint.sh
    └── init_db.py

Key Features

  1. Authentication Methods

    • Environment variable credentials
    • JWT token validation
  2. Migration Tools

    • Schema conversion
    • Data type mapping
    • Stored procedure translation
    • Batch data migration
  3. Web Interface

    • Real-time progress monitoring
    • Migration configuration
    • Connection statistics
    • Log viewer
  4. Security

    • SSL/TLS encryption (optional)
    • Password hashing (bcrypt)
    • Role-based access control
    • Token revocation

Installation

See detailed setup instructions

Usage

# Connect via Sybase client
tsql -S localhost -U admin -P password -D database

# Access web interface
http://localhost:8000