smart-php/mysql-scheman

MySQL schema synchronizer. A simple way to handle MySQL schema without writing MySQL query

0.0.5 2021-07-03 14:57 UTC

This package is auto-updated.

Last update: 2024-04-23 20:35:17 UTC


README

MySQL schema, a simple MySQL schema synchronization utility. This will create an UPDATE/ADD query automatically based on the schema difference in the database and schema file.

Build

Why we use MySQL Scheman

Developers find it very hard to synchronize MySQL schema while developing any application. The current conventional method is to create an SQL file with all the changes & update it in the staging/production server. The main demerit of this method is if there are multiple people and multiple SQL changes on the same table the process is a bit hectic. In order to solve this, we developed a platform where you can update the schema in a file, and by running sync to database it will create the SQL Query for the changes and it will execute.

Installation

If you use Composer, you can install MySQL Scheman with the following command: composer require smart-php/mysql-scheman

Or alternatively, include a dependency for MySQL Scheman in your composer.json file. For example

{
    "require-dev": {
        "smart-php/mysql-scheman": "dev-master"
    }
}

Config

A database configuration file should be there to communicate with the database. Please see the sample files and create a copy in your working directory with your database credentials.

JSON: config.json.example XML: config.xml.example

Usage (CLI)

To CLI Help

./vendor/bin/scheman --help

Exporting Database to Schema File:

./vendor/bin/scheman --config config.json --export yourdatabase.json

Sync the file schema with your database

./vendor/bin/scheman --config config.json --sync yourdatabase.json

License

See the LICENSE file.