20 dépôts
Utilities that manage and automate schema versioning and database structure updates.
Distinguishing note: None available; no candidates provided.
Explore 20 awesome GitHub repositories matching data & databases · Database Migration Tools. Refine with filters or upvote what's useful.
Laravel is a comprehensive full-stack web framework designed for building scalable server-side applications. It provides an integrated development environment that centers on an object-relational mapper for database abstraction, a robust routing system, and a sophisticated service container for dependency injection. The framework is built to handle complex application requirements through a modular architecture that emphasizes convention over configuration. What distinguishes Laravel is its deep integration of background processing and event-driven communication. It features a task queue orch
Tracks database schema evolution via version-controlled migration classes that ensure consistent structure across environments.
Vaultwarden is a self-hosted password management server designed to store and synchronize sensitive credentials, identities, and organizational data across multiple client devices. It functions as a database-backed web application that provides an API layer for secure client-server communication, enabling users to manage personal vaults and organizational data sharing with multi-factor authentication. The project distinguishes itself through a comprehensive administrative infrastructure that provides centralized control over server configuration, user accounts, and system diagnostics via a de
Applies incremental migration scripts to ensure persistent storage remains compatible with evolving application data structures.
This project is a full-stack web application scaffolder designed to initialize production-ready projects with pre-configured database, authentication, and deployment settings. It provides a standardized starting point for development by generating a complete application structure that includes integrated backend, frontend, and database components. The template distinguishes itself through a type-safe integration layer that automatically synchronizes backend API definitions with frontend client code, ensuring consistent data exchange. It also features a containerized development environment th
Tracks and applies schema changes using versioned revision files to synchronize data models with the underlying database structure during development.
TiDB is a horizontally scalable, distributed SQL database designed to provide consistent transactional storage and high-performance analytical processing within a single unified architecture. It utilizes a decoupled compute-storage design and a distributed key-value storage layer to ensure horizontal scalability and efficient range-based queries. By employing a consensus-based replication algorithm, the system maintains high availability and automatic failover across multiple nodes and geographical regions. The platform distinguishes itself through its hybrid transactional and analytical proc
TiDB transfers data from external or self-managed databases to the cloud using native migration tools and data merging techniques to ensure a smooth transition.
Outline is a full-stack server-side web application designed as a centralized platform for collaborative knowledge management. It provides teams with the infrastructure to create, organize, and share structured documentation through real-time editing tools, while supporting high availability and horizontal scalability in production environments. The platform distinguishes itself through a comprehensive suite of operational and development tools. It includes a command-line interface for managing database schema versioning and structural consistency across deployments, alongside an integrated t
Executes schema changes through a command-line interface to maintain consistent data states.
TypeORM is an object-relational mapper for TypeScript and JavaScript that bridges the gap between object-oriented application code and relational database tables. It provides a comprehensive data persistence layer that allows developers to define database entities using class decorators or configuration objects, enabling seamless interaction with data through object-oriented patterns. The project distinguishes itself through a flexible architecture that supports both the data mapper and repository patterns, alongside a fluent query builder that translates high-level method calls into platform
Compares current entity definitions against the existing database structure to automatically generate and apply migration SQL.
Dokploy is a self-hosted platform-as-a-service designed to simplify the deployment and management of containerized applications and databases. It provides a centralized control plane that decouples administrative management from application workloads, allowing users to oversee infrastructure across multiple server nodes through a unified web interface or a command-line tool. The platform distinguishes itself through an extensive library of pre-configured application templates, enabling the rapid deployment of databases, identity providers, and various productivity or development tools. It sup
Provides tools for managing and automating database schema migrations.
Drizzle ORM is a TypeScript-native database toolkit providing type-safe SQL query building, schema management, and automated migrations across PostgreSQL, MySQL, SQLite, and SingleStore.
Provides CLI tools to generate and manage database migrations.
This project is a community-driven directory and knowledge base for the PHP ecosystem. It serves as a comprehensive index of high-quality libraries, frameworks, tools, and educational materials, designed to help developers navigate the landscape and select appropriate solutions for their software projects. The directory distinguishes itself through a hierarchical taxonomy that organizes vast amounts of technical information into a logical, human-readable structure. By relying on distributed contributions from the developer community, it maintains a current and vetted collection of references
Lists tools for managing database schema migrations.
Sequelize is an object-relational mapping library that provides a unified interface for managing relational data through code. By implementing the Active Record pattern, it maps database tables to application objects, allowing developers to perform standard create, read, update, and delete operations using high-level method calls. The library abstracts complex database interactions by translating these calls into optimized, engine-specific SQL statements, ensuring consistent behavior across different database systems. The project distinguishes itself through a comprehensive suite of tools for
"Compares model definitions against the current database state to automatically generate and execute migration scripts for structural alignment."
Reflex is a full-stack web framework that enables the development of complete web applications using only Python. It provides a unified environment where server-side logic and client-side interfaces are synchronized through a shared, event-driven architecture. By using a declarative component language, the framework compiles code into reactive frontend elements and backend event handlers, allowing developers to manage the entire application lifecycle within a single codebase. The framework distinguishes itself through its reactive state management and integrated AI-assisted development tools.
Automates database schema migration by generating and applying migration files.
RethinkDB is a distributed, document-oriented database designed to store and manage JSON-formatted data across scalable clusters. It utilizes a custom log-structured storage engine with B-Tree indexing to ensure high-performance disk I/O and data persistence. The system maintains high availability through automatic sharding and replication, employing a primary-replica voting consensus mechanism to handle node failures and ensure consistent cluster operations. A defining characteristic of the platform is its reactive changefeed engine, which allows applications to subscribe to live data update
RethinkDB replaces binaries on all nodes to ensure compatibility with major version changes and rebuild indexes where necessary.
Prisma is a type-safe database object-relational mapper that uses a declarative schema to map data models to relational and document databases. It provides a unified toolkit for data access, combining a database driver with tools for schema management and record manipulation. The project features a multi-database driver that standardizes interactions across PostgreSQL, MySQL, and MongoDB. It includes a system for tracking and applying structural schema migrations across different environments and a graphical user interface for browsing and editing database records. The system ensures data in
Manages and automates schema versioning and structural updates to keep different database environments consistent.
gh-ost is a triggerless online schema migration tool for MySQL. It functions as a replication client and table management utility that synchronizes data from a source table to a shadow table using binary logs, allowing for table structure modifications without locking original tables or causing downtime. The tool distinguishes itself by using binary-log-based replication instead of triggers to stream row-based events to a shadow table. It implements load-aware throttling and dynamic performance tuning to adjust migration speed based on server load and replication lag. Users can monitor and ad
Functions as a database migration tool that synchronizes data from a source table to a shadow table using binary logs.
Flyway is a database schema versioning tool and SQL migration orchestrator. It applies version-controlled schema changes to relational databases using SQL scripts and Java Database Connectivity to ensure environments remain consistent and reproducible. The tool tracks applied migration scripts in a dedicated metadata table to determine which updates require execution. It supports the synchronization of schema versions across multiple different database engines and provides integration for build systems and application frameworks to automate updates during software release processes. Capabili
Implements a utility for versioning and applying incremental schema changes to relational databases via JDBC.
Mikro-ORM is a TypeScript-based object-relational mapping system that provides a unified persistence layer for Node.js applications. It translates TypeScript entities into relational or document-based database schemas, supporting a variety of engines including PostgreSQL, MySQL, MariaDB, MS SQL Server, SQLite, and MongoDB. The project implements the data mapper pattern to decouple in-memory domain models from the database persistence layer. It utilizes a unit of work pattern to track entity changes in memory and commit them in a single coordinated database transaction. The library covers com
Provides utilities for generating and executing versioned schema changes to keep the database in sync.
Dropwizard is a Java web application stack and REST framework used to build production-ready web services. It integrates an embedded HTTP server with operational tools to provide a complete environment for developing network interfaces that exchange JSON data. The project provides a set of core technology stacks for relational data mapping, schema migration, and operational performance monitoring. It includes a relational database migration tool to track schema updates and execute versioned scripts before an application starts. The framework covers a broad capability surface including reques
Ships tools to automate the execution of database structure update scripts during startup.
Data-migrate est un utilitaire en ligne de commande conçu pour gérer et exécuter des transformations de données séquentielles parallèlement aux migrations de schéma de base de données standard. Il fonctionne comme un framework de contrôle de version, permettant aux équipes de suivre, d'annuler et de synchroniser à la fois les changements structurels de la base de données et les mises à jour de données à travers plusieurs environnements et pipelines de déploiement. L'outil se distingue en coordonnant les migrations sur plusieurs connexions de base de données au sein d'une seule application, garantissant l'intégrité des données dans les architectures distribuées. Il prend en charge des structures de projet modulaires en permettant aux scripts de migration d'être organisés au sein de composants d'application isolés, facilitant la gestion indépendante des fonctionnalités et les flux de travail de développement distribué. Le système fournit une interface unifiée pour générer, exécuter et suivre l'état des fichiers de migration. Il garantit la cohérence grâce à une exécution transactionnelle, qui annule les mises à jour partielles en cas d'échec, et un vidage de schéma conscient de l'environnement, qui capture l'état actuel des migrations appliquées pour synchroniser les configurations entre les instances de développement, de test et de production. Le framework s'intègre dans les pipelines de déploiement automatisés pour exécuter les mises à jour de données nécessaires lors des versions d'application sans intervention manuelle. Il inclut des contrôles de validation pour identifier les tâches de migration en attente et empêcher les états d'application incohérents pendant les cycles de déploiement.
Provides a command-line utility for managing and executing sequential data transformations alongside standard database schema migrations.
Ebean est un framework de mappage objet-relationnel Java conçu pour simplifier la persistance des bases de données grâce à la génération automatique de requêtes, la migration de schéma et la gestion des transactions. Il utilise le mappage piloté par les métadonnées et l'amélioration du bytecode pour combler le fossé entre les objets d'application et les tables de base de données relationnelles, fournissant une couche persistante qui gère les interactions de données complexes tout en maintenant la cohérence à travers les limites de l'unité de travail. Le framework se distingue par son accent sur la productivité des développeurs et l'optimisation des performances. Il fournit des constructeurs de requêtes typés qui génèrent du code au moment de la compilation, permettant l'auto-complétion IDE et la validation statique des opérations de base de données. De plus, il inclut une prise en charge intégrée pour les tests basés sur des conteneurs, permettant aux développeurs de gérer des instances de base de données éphémères et d'automatiser l'initialisation du schéma directement au sein de leurs suites de tests. Au-delà du mappage fondamental, le projet offre une suite complète d'outils pour la gestion des données et l'observabilité. Cela inclut l'évolution automatique du schéma, le routage des répliques de lecture pour la gestion des connexions et la mise en cache multi-niveaux pour réduire la charge de la base de données. Il fournit également des capacités de diagnostic telles que la capture du plan d'exécution des requêtes et le traçage distribué pour aider à l'optimisation des performances. La bibliothèque prend en charge les flux de travail de déploiement modernes, y compris la compilation « ahead-of-time » pour les images natives afin d'éliminer la surcharge de réflexion à l'exécution. Elle est distribuée sous forme de bibliothèque Java standard, avec une documentation et des outils disponibles pour soutenir l'intégration dans les processus de construction existants.
Provides utilities that manage and automate schema versioning and database structure updates.
Standalone Migrations est un utilitaire basé sur Ruby qui fournit des capacités de gestion de schéma de base de données et de migration en dehors d'un framework web complet. Il permet aux développeurs de suivre, versionner et appliquer des changements structurels aux bases de données relationnelles en utilisant des scripts de migration standards dans des environnements personnalisés ou hors framework. L'outil se distingue en offrant une isolation multi-base de données, permettant la gestion de magasins de données indépendants au sein d'un seul projet via des ensembles de configuration séparés et des chemins de migration. Il prend en charge une configuration dynamique sensible à l'environnement, qui permet aux paramètres de connexion d'être ajustés à l'exécution, et fournit un système de hooks pour exécuter une logique personnalisée pendant le cycle de vie de la migration. Au-delà des tâches de migration de base, le projet inclut des utilitaires pour l'exécution ciblée de fichiers spécifiques, la configuration de clés étrangères et de clés primaires, et la sérialisation des structures de base de données en fichiers SQL bruts. Il est conçu pour s'intégrer dans des pipelines de déploiement pour des mises à jour de schéma automatisées et peut être appliqué à des bases de données héritées pour les intégrer dans des flux de travail de contrôle de version modernes.
Provides a library for executing schema migration scripts and managing database structures in non-Rails Ruby applications.