Skip to content

A simple MySQL database upgrade module based on plain SQL files

License

Notifications You must be signed in to change notification settings

primetime/node-mysql-upgrade

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MySQL Upgrade

npm

A simple MySQL database upgrade module based on plain SQL files. For developers who don't use an ORM like Sequelize, but still want to have a database.sync(); functionality.

npm install --save mysql-upgrade

Requirements

This module only works with Node 7.6 or later (because of native support for async/await).

How to use

const upgrade = require('mysql-upgrade')

const upgradeConfig = {

	// MySQL settings (passed directly to the MySQL connector) - at least user, password and database are required
	mysql: {
		host: 'localhost',
		user: 'root',
		password: '',
		database: ''
	},

	// Enable or disable logging output of the module
	// Optional, default: false
	verbose: true,

	// Name of the table that will store the database version
	// Optional, default: '_upgrade_version'
	// Set this if you already have a table '_upgrade_version' to avoid clashing
	table: 'my_upgrade_version',

	// Path where the SQL files are located
	// Optional, default: './database'
	path: './my-sql-files'
};

upgrade(upgradeConfig).then(function(upgraded) {
	console.log(upgraded);
	// { oldVersion: 0, newVersion: 1 }
})

Issues

If you encounter any bugs or problems with this module, please sumit an issue. Pull requests with bugfixes are of course welcome.

About

A simple MySQL database upgrade module based on plain SQL files

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published