2017 © Pedro Peláez
 

yii2-extension yii2-console-migration

yii2命令行中使用migration备份和还原数据库

image

kingkoo1985/yii2-console-migration

yii2命令行中使用migration备份和还原数据库

  • Thursday, April 26, 2018
  • by kingkoo1985
  • Repository
  • 1 Watchers
  • 0 Stars
  • 3 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 1 Versions
  • 0 % Grown

The README.md

yii2使用migration备份和还原数据库

yii2使用migration备份和还原数据库,最初只想做一个在命令行中备份的功能,后来将类重组了,增加了其他扩展使用方法。, (*1)

安装 Installation

安装此扩展的首选方式是通过 composer., (*2)

运行, (*3)

composer require kingkoo1985/yii2-console-migration "@dev"

或者添加, (*4)

"kingkoo1985/yii2-console-migration": "*"

composer.json 文件的对应地方., (*5)

命令行中备份数据表:

console\config\main.php中添加 :, (*6)

'controllerMap' => [
    'migrate' => [
        'class' => 'kingkoo1985\migration\ConsoleController',
    ],
],

在命令行中使用方式:, (*7)

php ./yii migrate/backup all #备份全部表
php ./yii migrate/backup table1,table2,table3... #备份多张表
php ./yii migrate/backup table1 #备份一张表

php ./yii migrate/up #恢复全部表

在后台中备份数据表:

在后台的控制器中,例如PublicController中加入下面的代码:, (*8)

public function actions()
{
    return [
        'backup' => [
            'class' => 'kingkoo1985\migration\WebAction',
            'returnFormat' => 'json',
            'migrationPath' => '@console/migrations'
        ]
    ];
}

在后台中发送一个ajax请求到/admin/public/backup?tables=yii2_ad,yii2_admin即可。, (*9)

其他使用方法:

对于想做更多扩展的朋友,可以直接继承kingkoo1985\migration\components\MigrateCreate, (*10)

或者使用一下代码:, (*11)

$migrate = Yii::createObject([
        'class' => 'kingkoo1985\migration\components\MigrateCreate',
        'migrationPath' => $this->migrationPath
]);
$migrate->create($table);

The Versions

26/04 2018

dev-master

9999999-dev

yii2命令行中使用migration备份和还原数据库

  Sources   Download

Apache-2.0

by ccdream

yii2 console migration