Для того чтобы подключиться к нескольким БД в фреймворке Yii2 нужно:
1. Создать две настройки БД в конфигурационном файле сайта. У меня подключения вынесены в отдельные файлы, и имеют следующий вид (пример).
Подключение к первой базе данных:
return [ 'class' => 'yiidbConnection', 'dsn' => 'mysql:host=127.0.0.1;dbname=work_db1', 'username' => 'root', 'password' => '', 'charset' => 'utf8', 'tablePrefix' => 'tbl_', ];
Подключение к второй базе данных:
return [ 'class' => 'yiidbConnection', 'dsn' => 'mysql:host=127.0.0.1;dbname=work_db2', 'username' => 'root', 'password' => '', 'charset' => 'utf8', 'tablePrefix' => 'tbl_', ];
2. В базовом конфиге прописываем:
'db' => require(__DIR__ . '/db.php'), 'db2' => require(__DIR__ . '/db2.php'),
Получаем содержимое БД, по нашему SQL запросу:
$Query = (new yiidbQuery()); $Command = Yii::$app -> db2; $data_ar = $Command -> createCommand( $Query -> select('*') -> from('{{%authitem}}') -> createCommand() -> getRawSql() ) -> queryAll(); echo" <pre>";print_r($data_ar);echo"</pre> ";