{"id":43438,"library":"node-mysql-migration","title":"node-mysql-migration","description":"Simple MySQL migration utility for Node.js (v0.2.1, last updated 2014). Provides basic migration framework using plain SQL files with flyway-style naming (V1__description.sql). Each migration file supports only a single SQL statement by default; multiple statements require `multipleStatements: true` in connection config. No rollback support, no programmatic API, minimal error handling. Last release over a decade ago, recommended for legacy projects only.","status":"abandoned","version":"0.2.1","language":"javascript","source_language":"en","source_url":"https://github.com/borsch/node-mysql-migration","tags":["javascript","nodejs","mysql","mysql-migration","migration"],"install":[{"cmd":"npm install node-mysql-migration","lang":"bash","label":"npm"},{"cmd":"yarn add node-mysql-migration","lang":"bash","label":"yarn"},{"cmd":"pnpm add node-mysql-migration","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency for creating database connections","package":"mysql","optional":true}],"imports":[{"note":"CJS only; no ESM support.","wrong":"import migration from 'node-mysql-migration';","symbol":"default","correct":"const migration = require('node-mysql-migration');"},{"note":"Named export available via destructuring.","wrong":"","symbol":"migrate","correct":"const { migrate } = require('node-mysql-migration');"}],"quickstart":{"code":"const mysql = require('mysql');\nconst migration = require('node-mysql-migration');\n\nconst connection = mysql.createConnection({\n  host: process.env.DB_HOST ?? 'localhost',\n  user: process.env.DB_USER ?? 'root',\n  password: process.env.DB_PASS ?? '',\n  database: process.env.DB_NAME ?? 'test',\n  multipleStatements: true // enable for multi-query files\n});\n\n// Run migrations\nmigration.migrate(connection, './migrations');\n\n// To use CLI, run: node my_db_migrations.js migrate\n// Also supports: clean (drops all tables) and init (creates schema table)","lang":"javascript","description":"Initialize connection, run migrations from ./migrations folder with multi-statement support enabled."},"warnings":[{"fix":"Set `multipleStatements: true` in mysql.createConnection() or split into separate migration files.","message":"By default, each migration file can contain only ONE SQL statement. Multiple statements cause failure.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Manually reverse migrations or handle externally.","message":"No rollback functionality; once applied, migrations cannot be reverted via this tool.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Use an actively maintained alternative like `db-migrate` or `knex`.","message":"Package unmaintained since 2014; no support for modern MySQL versions or features.","severity":"deprecated","affected_versions":">=0.0.0"}],"env_vars":null,"search_vec":"'2014':14 'ago':63 'api':54 'basic':16 'config':48 'connect':47 'decad':62 'default':40 'description.sql':29 'error':56 'file':22,32 'flyway':25 'flyway-styl':24 'framework':18 'handl':57 'javascript':69 'last':12,58 'legaci':66 'migrat':4,7,17,31,74,75 'minim':55 'multipl':41 'multiplestat':44 'mysql':3,6,71,73 'mysql-migr':72 'name':27 'node':2 'node-mysql-migr':1 'node.js':10 'nodej':70 'plain':20 'programmat':53 'project':67 'provid':15 'recommend':64 'releas':59 'requir':43 'rollback':50 'simpl':5 'singl':36 'sql':21,37 'statement':38,42 'style':26 'support':33,51 'true':45 'updat':13 'use':19 'util':8 'v0.2.1':11 'v1':28","created_at":"2026-06-05T16:59:47.918581+00:00","updated_at":"2026-06-05T16:59:47.918581+00:00","problems":[{"fix":"Add `multipleStatements: true` to your mysql connection config, or split into separate files.","cause":"Multiple SQL statements in one migration file without `multipleStatements` enabled.","error":"Error: ER_PARSE_ERROR: You have an error in your SQL syntax... near 'ALTER TABLE' at line X"},{"fix":"Use `const migration = require('node-mysql-migration');`","cause":"Incorrect import (ESM import instead of CommonJS require).","error":"TypeError: migration.migrate is not a function"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/borsch/node-mysql-migration#readme","github":"https://github.com/borsch/node-mysql-migration","docs":null,"changelog":null,"pypi":null,"npm":"node-mysql-migration","openapi_spec":null,"status_page":null,"smithery":null,"categories":["database"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-05","next_check":"2026-09-03","install_tag":null}}