Skip to content

dmstr/yii2-db

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Yii 2 Database Toolkit

Latest Stable Version Total Downloads License

About

Retrieves all eager loaded attributes of a model including relations. Once the extension is installed, simply use it in your code by accessing the corresponding classes by their full namespaced path.

runs database migrations from sql files

Installation

The preferred way to install this extension is through composer.

Either run

composer require --prefer-dist dmstr/yii2-db "*"

or add

"dmstr/yii2-db": "*"

to the require section of your composer.json file.

Configuration

Include it in your console configuration

   'controllerMap' => [
        'db'         => [
            'class' => 'dmstr\console\controllers\MysqlController',
            'noDataTables' => [
                'app_log',
                'app_session',
            ]
        ],
    ],

Usage

Commands

yii migrate ...

Create a file migration class

yii migrate/create \
    --templateFile='@vendor/dmstr/yii2-db/db/mysql/templates/file-migration.php' init_dump

yii db ...

DESCRIPTION

MySQL database maintenance command for current (db) connection


SUB-COMMANDS

- db/create               Create schema
- db/destroy              Remove schema
- db/dump                 Dump schema (all tables)
- db/export               Export tables (INSERT only)
- db/import               Import from file to database and flush cache
- db/index (default)      Displays tables in database
- db/wait-for-connection

To see the detailed information about individual sub-commands, enter:

  yii help <sub-command>

Show help

yii help db

Examples

Dry-run command (not available for all commands)

yii db/create root secret -n

Destroy database

yii db/destroy root secret

Dump all tables

yii db/dump -o /dumps

Dump from different connection, exclude logging tables

yii db/dump -o /dumps \
  --db=dbReadonly \
  --noDataTables=app_audit_data,app_audit_entry,app_audit_error,app_audit_javascript,app_audit_mail

Dump from secondary connection, import into primary (default)

yii db/dump -o /dumps   \
    --db=dbReadonly   \
    --noDataTables=app_audit_data,app_audit_entry,app_audit_error,app_audit_javascript,app_audit_mail \
 | xargs yii db/import --interactive=0

Built by dmstr