Appearance
vix orm
Database migrations and schema management.
Usage
bash
vix orm migrate [options]
vix orm rollback --steps <n> [options]
vix orm status [options]
vix orm makemigrations --new <schema.json> [options]Description
vix orm manages:
- Database migrations
- Schema evolution
- Migration history
- Rollback operations
Supports MySQL and SQLite dialects.
Commands
Migrate
bash
vix orm migrateApply pending migrations.
Rollback
bash
vix orm rollback --steps <n>Rollback last N applied migrations.
Required:
bash
--steps <n>Status
bash
vix orm statusShow applied and pending migrations.
Makemigrations
bash
vix orm makemigrations --new <schema.json>Generate migration from schema diff.
Options:
bash
--new <path> New schema (required)
--snapshot <path> Previous schema snapshot (default: schema.json)
--name <label> Migration label (default: auto)
--dialect <mysql|sqlite> SQL dialect (default: mysql)Common Options
bash
--db <name> Database name
--dir <path> Migrations directory
--host <uri> MySQL URI
--user <name> Database user
--pass <pass> Database password
--project-dir <path> Force project root detection
--tool <path> Override migrator executable pathEnvironment Defaults
bash
VIX_ORM_HOST
VIX_ORM_USER
VIX_ORM_PASS
VIX_ORM_DB
VIX_ORM_DIR
VIX_ORM_TOOLExamples
Apply migrations:
bash
vix orm migrate --db blog_db --dir ./migrationsRollback:
bash
vix orm rollback --steps 1 --db blog_db --dir ./migrationsStatus:
bash
vix orm status --db blog_dbUsing environment variables:
bash
VIX_ORM_DB=blog_db vix orm migrate --dir ./migrationsGenerate migration:
bash
vix orm makemigrations --new ./schema.new.json --snapshot ./schema.json --dir ./migrations --name create_users --dialect mysqlvix orm keeps database schema evolution explicit and versioned.