2

I just have installed yii2 on linux mint, using xampp, and my php yii migrate doesn't work.

basic # php yii migrate
Yii Migration Tool (based on Yii v2.0.10)

Exception 'yii\db\Exception' with message 'could not find driver'

in /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/db/Connection.php:549

Stack trace:
#0 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/db/Connection.php(863): yii\db\Connection->open()
#1 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/db/Connection.php(850): yii\db\Connection->getMasterPdo()
#2 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/db/Command.php(219): yii\db\Connection->getSlavePdo()
#3 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/db/Command.php(894): yii\db\Command->prepare(true)
#4 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/db/Command.php(362): yii\db\Command->queryInternal('fetchAll', NULL)
#5 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/db/mysql/Schema.php(198): yii\db\Command->queryAll()
#6 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/db/mysql/Schema.php(97): yii\db\mysql\Schema->findColumns(Object(yii\db\TableSchema))
#7 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/db/Schema.php(147): yii\db\mysql\Schema->loadTableSchema('migration')
#8 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/console/controllers/MigrateController.php(199): yii\db\Schema->getTableSchema('{{%migration}}', true)
#9 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/console/controllers/BaseMigrateController.php(771): yii\console\controllers\MigrateController->getMigrationHistory(NULL)
#10 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/console/controllers/BaseMigrateController.php(135): yii\console\controllers\BaseMigrateController->getNewMigrations()
#11 [internal function]: yii\console\controllers\BaseMigrateController->actionUp(0)
#12 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/base/InlineAction.php(55): call_user_func_array(Array, Array)
#13 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/base/Controller.php(154): yii\base\InlineAction->runWithParams(Array)
#14 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/console/Controller.php(128): yii\base\Controller->runAction('', Array)
#15 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/base/Module.php(454): yii\console\Controller->runAction('', Array)
#16 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/console/Application.php(180): yii\base\Module->runAction('migrate', Array)
#17 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/console/Application.php(147): yii\console\Application->runAction('migrate', Array)
#18 /opt/lampp/htdocs/basic/vendor/yiisoft/yii2/base/Application.php(375): yii\console\Application->handleRequest(Object(yii\console\Request))
#19 /opt/lampp/htdocs/basic/yii(20): yii\base\Application->run()
#20 {main}
Manfred Radlwimmer
  • 13,257
  • 13
  • 53
  • 62
Serhii KH
  • 21
  • 6

5 Answers5

1

you're missing php-mysql or php-mysqlnd
run this

apt-get install php-mysql

update:
there's also a requirements.php file in yii. You might wanna check that out and see exactly what your system is missing. it could be pdo-mysql

either way, check the requirements and a phpinfo(). see what you need and make sure you have it installed and configured propperly

csminb
  • 2,382
  • 1
  • 16
  • 27
  • Only if OP wants to use MySQL. – Bizley Apr 21 '17 at 07:41
  • I am new with yii 2 and errors like this so i just can't understand what is going on. On my home PC with Windiws 10 everything is doing fine and at this Pc with linux mint ... idk :( – Serhii KH Apr 21 '17 at 09:07
  • @Bizley yii2/db/mysql/Schema does show up in his stack trace, so that's where that assumption came from – csminb Apr 22 '17 at 11:31
0

Just like the error message states - there is no database driver installed. Choose your database and install correct driver.

Bizley
  • 17,392
  • 5
  • 49
  • 59
0

Here is the solution to the problem... yiisitenamne/backend/common/config look for the php file main-local.php change "localhost -> 127.0.0.1"

0

Are you using Virtualbox?

Looks like you are missed to install php-mysql

apt-get install php-mysql

then run migration command

php console/yii migrate/up or

php console/yii migrate
Poonkodi
  • 99
  • 1
  • 7
-1

I guess this is because of missing driver for PDO. Based on DB you are using, you might want to enable pdo-mysql, pdo-mssql, pdo-postgres ... in your XAMPP php.ini.

Trac Nguyen
  • 486
  • 4
  • 8