Nmig 开源项目教程
1. 项目的目录结构及介绍
Nmig 项目的目录结构如下:
nmig/
├── config/
│ ├── config.json
│ ├── db_structure.json
│ └── log_config.json
├── migrations/
│ ├── init/
│ └── upgrade/
├── src/
│ ├── lib/
│ └── index.js
├── .gitignore
├── package.json
└── README.md
目录结构介绍
config/
: 包含项目的配置文件。config.json
: 主要配置文件,包含数据库连接信息和其他设置。db_structure.json
: 数据库结构定义文件。log_config.json
: 日志配置文件。
migrations/
: 包含数据库迁移脚本。init/
: 初始化迁移脚本。upgrade/
: 升级迁移脚本。
src/
: 源代码目录。lib/
: 库文件目录。index.js
: 项目入口文件。
.gitignore
: Git 忽略文件配置。package.json
: Node.js 项目配置文件。README.md
: 项目说明文档。
2. 项目的启动文件介绍
项目的启动文件是 src/index.js
。这个文件是整个项目的入口点,负责初始化配置、连接数据库并执行迁移任务。
启动文件主要功能
- 读取配置文件
config/config.json
。 - 初始化数据库连接。
- 执行数据库迁移任务。
3. 项目的配置文件介绍
config.json
config.json
是项目的主要配置文件,包含以下关键配置项:
{
"source": {
"host": "localhost",
"user": "root",
"password": "password",
"database": "source_db"
},
"target": {
"host": "localhost",
"user": "root",
"password": "password",
"database": "target_db"
},
"options": {
"debug": true,
"logPath": "./logs",
"chunkSize": 1000,
"excludeTables": [],
"includeTables": [],
"excludeFields": [],
"includeFields": []
}
}
配置项说明
source
: 源数据库连接信息。target
: 目标数据库连接信息。options
: 其他选项配置,如调试模式、日志路径、数据块大小等。
db_structure.json
db_structure.json
文件定义了数据库的结构,包括表和字段的详细信息。
log_config.json
log_config.json
文件配置了日志记录的详细设置,包括日志级别、输出格式等。
通过以上配置文件,可以灵活地调整项目的运行参数和行为。