Download the PHP package dbschemix/migrator without Composer
On this page you can find all versions of the php package dbschemix/migrator. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package migrator
Database Migrator
Консольная программа для управления миграциями.
Консольная утилита на основе:
- https://github.com/dbschemix/core
- https://github.com/dbschemix/pdo
- https://github.com/symfony/console
Command
- init — инициализация проекта: создание папки для миграций и конфигурационного файла.
- up — применение всех ожидающих миграций до самой свежей.
- down — откат последней примененной миграции (или нескольких).
- fixture — применение всех фикстур.
- create — создание файла миграции (удобно при разработке).
- verify — последовательный запуск up и сразу down для последней версии миграций (удобно при разработке).
- redo — последовательный запуск down и сразу up для последней миграции (удобно при разработке).
setup
Например, для базы данных с именем main под управлением сервера postgres:
Описываем конфигурацию:
migration
Команды миграции описываются на языке SQL, например:
Управляющие команды:
@up@down@skip
Если команды не указаны, то весь код будет вычитан как секция up.
Если нужно скипнуть файл целиком, то можно добавить в название постфикс skip, например 202501011025_name_skip.sql
CLI application
Example
With exactly all
If any migration fails, the entire batch is rolled back, leaving the database unchanged.
With repeatable
Down with latest version
Redo with latest version
Verify
With limit
error
Docker / docker-compose
The library ships a thin runtime image. The image contains PHP, the
pdo_mysql / pdo_pgsql / pdo_sqlite extensions and an entrypoint — it
does not contain the library. The library and your custom code
(e.g. eventSubscribers) come from your project's mounted vendor/.
Config contract. Provide a PHP file that returns the Migrator:
The file is responsible for its own autoload and must end with
return $migrator;. Resolve paths with __DIR__ so they work inside the
mounted container. eventSubscribers is plain PHP — list instances of any
class (including your own), no special notation.
docker-compose service. Mount your project, point MIGRATOR_CONFIG at
the config file, and pass the migration command via command::
MIGRATOR_CONFIG defaults to /app/migrator.php. init: true ensures
signals (e.g. docker compose stop) are delivered cleanly. Any
migrate:* command and its options are accepted, exactly as in the CLI.
A runnable sqlite example lives in example/docker/migrator.php; build and
exercise it locally with make docker-runtime.
All versions of migrator with dependencies
symfony/console Version ^7.4
dbschemix/core Version ^1.1
dbschemix/pdo Version ^1.1
league/climate Version ^3.10