hjp1011 / yii2-console-migration
yii2命令行中使用migration备份和还原数据库
Installs: 527
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 1
Open Issues: 0
Type:yii2-extension
This package is not auto-updated.
Last update: 2024-11-12 05:02:39 UTC
README
Yii2 uses Migration to back up and restore the database, adding other extended usage methods.
Notice:
If you are using PHP7.2, then yII must use v2.0.15.1 or higher, because the yii2 core class Object conflicts with the PHP7.2 reserved class Object.
use yii\base\Object // PHP7.1 and previous versions use yii\base\BaseObject // PHP7.2
Installation
The preferred way to install this extension is through [composer] (http://getcomposer.org/download/).
Run
composer require hjp1011/yii2-console-migration "*"
Or add
"hjp1011/yii2-console-migration": "*"
To the corresponding location of the 'composer. Json' file.
usage
Backup table in command line:
inconsole\config\main.php
add :
'controllerMap' => [ 'migrate' => [ 'class' => 'yiiframe\migration\ConsoleController', ], ],
Use on the command line:
php ./yii migrate/backup all #Backup all tables
php ./yii migrate/backup table1,table2,table3... #Backup multiple tables
php ./yii migrate/backup table1 #Back up a table
php ./yii migrate/up #Restore all tables
Back up tables in the background:
Add the following code to a background controller, such as PublicController:
public function actions() { return [ 'backup' => [ 'class' => 'yiiframe\migration\WebAction', 'returnFormat' => 'json', 'migrationPath' => '@console/migrations' ] ]; }
Send an Ajax request to/admin/public/backup?tables=yii2_ad,yii2_admin
。
Other usage:
For friends who want to do more extensions, you can inherit directly
yiiframe\migration\components\MigrateCreate
Or use the following code:
$migrate = Yii::createObject([ 'class' => 'yiiframe\migration\components\MigrateCreate', 'migrationPath' => $this->migrationPath ]); $migrate->create($table);