README
ThreeEyedRaven91's ter-data-migration
A cool tools for migrate data from a database (maybe staging or development environment) to other database (production or staging)
You will never miss anything again.
How to use
Installation
npm install -g ter-data-migration
# or
yarn global add ter-data-migration
Config
.tdm_config
folder
Create mkdir .tdm_config
cd .tdm_config
profile.json
file
Create {
"profiles": {
"development": {
"database": "your_database",
"user": "your_user",
"password": "your_password",
"dialect": "mysql or something else",
"host": "your_mysql_host"
},
"staging": {
"database": "your_database",
"user": "your_user",
"password": "your_password",
"dialect": "mysql or something else",
"host": "your_mysql_host"
}
},
"default": "development"
}
Run
# backup
ter-data-migration backup
ter-data-migration backup --source=development
# restore
ter-data-migration restore
ter-data-migration restore --target=staging
# migrate
ter-data-migration migrate --source=development --target=staging
# help
ter-data-migration --help
Options
Option | Short | Meaning | Example |
---|---|---|---|
source | -s | Define source environment (not working with restore) | ter-data-migration backup --source=development |
target | -t | Define target environment (not working with backup) | ter-data-migration restore --target=development |
include | -i | Only backup / restore with following tables | ter-data-migration backup --include=Users,Projects |
exclude | -e | Exclude tables backup / restore. Not working if include appear | ter-data-migration backup --exclude=Logs,PasswordReset |
See result
Everything in your db is exported with ${table_name}.json
Roadmap
Version | Function | Status |
---|---|---|
0.1.x | Read from profile (with default config) and run export to json | Done |
0.2.x | Read from profile (with default config) and restore from json | Done |
0.3.x | Add params profile, allow include or exclude tables | Done |
0.4.x | Add params from, to and migration from profile to profile | Done |
0.5.x | Add scenario file | To do |
0.6.x | Provide API to programmatically migration, backup, restore | To do |
0.7.x | Provide init command allow create profile.json | To do |