Браузерная SQL IDE, которую можно развернуть рядом с данными и подключить к десяткам баз данных и хранилищ, с SSO, аудитом запросов и AI-помощником; лицензия MIT.
golang-migrate/migrate
Инструмент миграции баз данных на Go с CLI и библиотекой для применения упорядоченных изменений схемы в разных СУБД.
- Звёзды
- 18,983
- Форки
- 1,618
- Открытые issues
- 492
- Последний коммит
- в прошлом месяце
Что это?
migrate считывает файлы миграций с версиями из источника, например локальной файловой системы, S3 или GitHub, и применяет их по порядку к целевой базе данных. Каждая миграция состоит из пары файлов up и down, поэтому изменения можно применить или откатить. За выполнение отвечают драйверы баз данных, а логика сортировки и отслеживания состояния сосредоточена в ядре.
Инструмент поддерживает множество баз данных, включая PostgreSQL, MySQL и MariaDB, SQLite, MongoDB, Cassandra, Neo4j, Google Cloud Spanner, CockroachDB, ClickHouse и SQL Server. Источниками миграций могут быть пути в файловой системе, io/fs, встроенные бинарные данные, GitHub, GitLab, Bitbucket, AWS S3 и Google Cloud Storage.
Его можно запускать как отдельный инструмент командной строки, использовать официальный Docker-образ или подключать как библиотеку Go. Библиотека принимает собственные клиент базы данных и логгер, а также поддерживает корректную остановку, чтобы помочь избежать частично применённых миграций.
Ключевые возможности
- 01Применяет файлы миграций up и down в порядке версий.
- 02Поддерживает множество баз данных, включая PostgreSQL, MySQL, SQLite, MongoDB и Spanner.
- 03Считывает миграции из файловой системы, встроенных данных, Git-хостингов и облачных хранилищ.
- 04Предоставляет CLI, Docker-образ и библиотеку Go.
- 05При использовании в качестве библиотеки принимает существующий клиент базы данных и пользовательский логгер.
Сценарии использования
- Версионирование изменений схемы для сервиса на Go, работающего с PostgreSQL или MySQL.
- Запуск миграций как этапа конвейера CI/CD или развёртывания контейнеров.
- Встраивание миграций в бинарный файл Go, чтобы поставлять их вместе с приложением.
- Управление изменениями схем в нескольких СУБД с помощью одного инструмента.
Быстрый старт
- 1
Прочитайте руководство для начала работы и установите CLI, следуя инструкциям
- 2
Запустите миграцию с помощью Docker, заменив заполнитель каталога миграций
docker run -v {{ migration dir }}:/migrations --network host migrate/migrate -path=/migrations/ -database postgres://localhost:5432/database up 2
Что важно знать
- Лицензия не указана явно в метаданных проекта, поэтому перед использованием проверьте условия лицензии в репозитории.
Темы
Частые вопросы
- Что такое migrate?
- Инструмент миграции баз данных на Go с CLI и библиотекой для применения упорядоченных изменений схемы в разных СУБД. migrate считывает файлы миграций с версиями из источника, например локальной файловой системы, S3 или GitHub, и применяет их по порядку к целевой базе данных. Каждая миграция состоит из пары файлов up и down, поэтому изменения можно применить или откатить. За выполнение отвечают драйверы баз данных, а логика сортировки и отслеживания состояния сосредоточена в ядре.
- migrate можно использовать бесплатно? Какая у него лицензия?
- migrate распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- migrate всё ещё поддерживается?
- Обновлялся за последние 6 месяцев. Последний коммит в migrate — 9 сент. 2026 г..
- Для чего можно использовать migrate?
- Версионирование изменений схемы для сервиса на Go, работающего с PostgreSQL или MySQL. Запуск миграций как этапа конвейера CI/CD или развёртывания контейнеров. Встраивание миграций в бинарный файл Go, чтобы поставлять их вместе с приложением. Управление изменениями схем в нескольких СУБД с помощью одного инструмента.
- Как установить migrate?
- Прочитайте руководство для начала работы и установите CLI, следуя инструкциям Запустите миграцию с помощью Docker, заменив заполнитель каталога миграций: docker run -v {{ migration dir }}:/migrations --network host migrate/migrate -path=/migrations/ -database postgres://localhost:5432/database up 2
- Где скачать migrate?
- Исходный код и инструкции по установке — на GitHub: https://github.com/golang-migrate/migrate
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
CLI и библиотека Go для управления изменениями схемы БД с помощью версионируемых SQL-файлов или Go-функций.
Бесплатный кроссплатформенный SQL-клиент для настольных ПК и инструмент для работы с базами данных: поддерживает более 100 баз через драйверы JDBC и ODBC.
Бесплатный локальный клиент для работы с базами данных и SQL-среда с поддержкой ИИ: более 40 СУБД, desktop, web, Docker и CLI.
Кроссплатформенный SQL-редактор и менеджер баз данных для Linux, macOS и Windows с поддержкой MySQL, PostgreSQL, SQLite, SQL Server и других СУБД.
Типобезопасный SQL query builder для TypeScript с автодополнением таблиц, столбцов и типов результатов для разных SQL-баз данных.