Registry / database / mygrate

mygrate

JSON →
library0.5.7jsnpmunverified

mygrate is a SQL-based database migration tool for MySQL, PostgreSQL, and SQL Server that uses plain SQL files for up/down migrations. Version 0.5.7 (latest) supports migration scripts runnable by DBAs, with environment-based configurations (development/test) and commands like init, new, up, down, and last. It focuses on simplicity and DBA-friendly workflows, differentiating from ORM-based tools by relying on raw SQL and providing a config.js for database connection settings. Release cadence is low; no major version changes recently.

npm install mygrate
INSTALL
IMPORT
SIG · MYGRATE
M
mygrate
databasejavascriptv0.5.7
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

default
import mygrate from 'mygrate'
const mygrate = require('mygrate')
ESM-only since v0.5.0

Initialize mygrate with PostgreSQL config and run all pending migrations up.

import mygrate from 'mygrate'; const config = { client: 'postgresql', connection: { host: process.env.DB_HOST ?? 'localhost', user: process.env.DB_USER ?? 'root', password: process.env.DB_PASS ?? '', database: process.env.DB_NAME ?? 'mydb' } }; await mygrate.init(config); await mygrate.up();
Debug
Known issues
breakingESM-only since v0.5.0: require() throws 'ERR_REQUIRE_ESM'
fix
Use import syntax or dynamic import().
affects: >=0.5.0
gotchaConfig file must be named migrations/config.js
fix
Place config.js in migrations/ directory.
affects: <1.0.0
gotchaDatabase drivers (mysql, pg, mssql) must be installed separately
fix
npm install mysql pg mssql.
affects: >=0.0.0
Errors
Common errors & fixes
Error: Cannot find module 'mysql'
Database driver not installed for selected client.
fix
npm install mysql pg mssql
TypeError: (0 , mygrate.init) is not a function
CommonJS require with default export in ESM-only version.
fix
Change to import mygrate from 'mygrate'
Error: listen EADDRINUSE :::80
Conflict with another service on port 80.
fix
Change port in config or stop the other service.
Upgrade
Version history
0.5.7latest on npm
Audit
Dependencies
mysqloptionalMySQL database driver
pgoptionalPostgreSQL database driver
mssqloptionalSQL Server database driver
Agent activity
14 hits · last 30 days
node
12
Amazon
1
Resources
mygrate — npm install mygrate · libregistry