Кроссплатформенный SQL-редактор и менеджер баз данных для Linux, macOS и Windows с поддержкой MySQL, PostgreSQL, SQLite, SQL Server и других СУБД.
amacneil/dbmate
Лёгкий инструмент командной строки для управления миграциями баз данных на чистом SQL — без привязки к фреймворку.
- Звёзды
- 7,465
- Форки
- 385
- Открытые issues
- 31
- Последний коммит
- 16 часов назад
Что это?
Dbmate помогает поддерживать схему базы данных в актуальном состоянии у разработчиков и на production-серверах, применяя SQL-файлы миграций с версиями по временным меткам. Инструмент поставляется как отдельный бинарный файл и работает с Go, Node.js, Python, Ruby, PHP, Rust, C++ и любым другим стеком, который использует поддерживаемую базу данных.
Миграции записываются на чистом SQL: в одном файле задаются секции `migrate:up` и `migrate:down`. По умолчанию каждая миграция выполняется в транзакции, а применённые версии записываются в таблицу `schema_migrations`. Dbmate также может сохранить итоговую схему в файл `schema.sql`, чтобы изменения схемы отображались в git как наглядные diff.
Инструмент поддерживает PostgreSQL, MySQL, MariaDB, SQLite, ClickHouse, BigQuery и Spanner через интерфейс PostgreSQL. Параметры подключения задаются переменной `DATABASE_URL` или файлом `.env`. Среди доступных команд — создание и удаление баз данных, ожидание готовности базы и откат миграций.
Ключевые возможности
- 01Файлы миграций на чистом SQL с секциями up и down
- 02Миграции с версиями по временным меткам, чтобы избежать конфликтов версий между разработчиками
- 03По умолчанию миграции атомарно выполняются внутри транзакции
- 04Сохраняет схему в `schema.sql`, чтобы проверять её изменения в системе контроля версий
- 05Читает URL подключения из переменных окружения или файла `.env`
Сценарии использования
- Поддержание схемы в актуальном состоянии у команды, работающей над одним приложением
- Управление миграциями для нескольких сервисов, написанных на разных языках
- Создание и удаление тестовых баз данных в CI перед запуском набора тестов
- Запуск миграций в production или контейнерах с ожиданием готовности базы данных
Темы
Частые вопросы
- Что такое dbmate?
- Лёгкий инструмент командной строки для управления миграциями баз данных на чистом SQL — без привязки к фреймворку. Dbmate помогает поддерживать схему базы данных в актуальном состоянии у разработчиков и на production-серверах, применяя SQL-файлы миграций с версиями по временным меткам. Инструмент поставляется как отдельный бинарный файл и работает с Go, Node.js, Python, Ruby, PHP, Rust, C++ и любым другим стеком, который использует поддерживаемую базу данных.
- dbmate можно использовать бесплатно? Какая у него лицензия?
- dbmate распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- dbmate всё ещё поддерживается?
- Активно поддерживается. Последний коммит в dbmate — 18 окт. 2026 г..
- Для чего можно использовать dbmate?
- Поддержание схемы в актуальном состоянии у команды, работающей над одним приложением Управление миграциями для нескольких сервисов, написанных на разных языках Создание и удаление тестовых баз данных в CI перед запуском набора тестов Запуск миграций в production или контейнерах с ожиданием готовности базы данных
- Где скачать dbmate?
- Исходный код и инструкции по установке — на GitHub: https://github.com/amacneil/dbmate
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Лёгкий кроссплатформенный клиент для 100+ баз данных: десктопное приложение, Docker, CLI, встроенный AI-помощник по SQL и MCP-сервер.
Терминальный интерфейс с управлением с клавиатуры для подключения к разным базам данных SQL и выполнения запросов, вдохновлённый lazygit.
Полнофункциональный инструмент для изучения баз данных: проектирование, навигация, документирование и анализ схем, включая ERD-диаграммы для крупных и запутанных баз данных.
Браузерная SQL IDE, которую можно развернуть рядом с данными и подключить к десяткам баз данных и хранилищ, с SSO, аудитом запросов и AI-помощником; лицензия MIT.
Нативная IDE для работы с базами данных в macOS, Windows и Linux: поддерживает PostgreSQL, MySQL, SQLite, Redis, MongoDB, SQL Server и ClickHouse, включает MCP-сервер и AI-чат.