Add TheTool database migration documentation
This commit is contained in:
54
db/README.md
Normal file
54
db/README.md
Normal file
@@ -0,0 +1,54 @@
|
||||
# TheTool Database Migrations
|
||||
## Introduction
|
||||
|
||||
This project utilizes Phinx for Database Migrations
|
||||
|
||||
## Table of Contents
|
||||
- [Initializing Phinx](#Initializing)
|
||||
- [Creating Migrations](#creating-migrations)
|
||||
- [Migrating / Rolling Back](#migrating--rolling-back)
|
||||
- [Documentation](#documentation)
|
||||
|
||||
## Initializing
|
||||
|
||||
To start using Phinx for database migrations, you first need to initialize Phinx and set up your configuration. Run the following command in your project directory:
|
||||
|
||||
```bash
|
||||
vendor/bin/phinx init
|
||||
```
|
||||
|
||||
After initialization, add two environments: `thetool` and `thetool_addressdb` to your Phinx configuration to ensure it functions correctly with TheTool's database setup.
|
||||
|
||||
## Usage
|
||||
### Creating Migrations
|
||||
|
||||
To create a new database migration, use the command below
|
||||
|
||||
Custom Template -t : `db/template/migrate.up_down.template`
|
||||
Replace `{MIGRATION_NAME}` : Example `AddNewTable`
|
||||
|
||||
```bash
|
||||
vendor/bin/phinx create {MIGRATION_NAME} -t db/template/migrate.up_down.template
|
||||
```
|
||||
|
||||
A new migration file will be created in `db/migrations`
|
||||
|
||||
### Migrating / Rolling Back
|
||||
|
||||
Use the following command to apply the migrations.
|
||||
|
||||
Use `-t={TARGET_TIMESTAMP}` to go to a specific migration target
|
||||
Use `--dry-run` to simulate the Migratio
|
||||
|
||||
```bash
|
||||
vendor/bin/phinx migrate [-t={TARGET_TIMESTAMP}] [--dry-run]
|
||||
```
|
||||
|
||||
Use the following command to undo the migrations.
|
||||
|
||||
```bash
|
||||
vendor/bin/phinx rollback [-t={TARGET_TIMESTAMP}] [--dry-run]
|
||||
```
|
||||
## Documentation
|
||||
|
||||
For more detailed information on using Phinx, visit the [Phinx documentation](https://book.cakephp.org/phinx/0/en/intro.html) .
|
||||
Reference in New Issue
Block a user