Error On Migrate Command Advanced Yii2 App

I try to run Yii2 on a new MacBook Pro with Mavericks and the latest Xampp 1.8.7 with PHP 5.5.

Installing Advanced with composer works perfect but on the command php yii migrate I get the error:

php yii migrate

Yii Migration Tool (based on Yii v2.0.0-dev)

exception ‘PDOException’ with message ‘SQLSTATE[HY000] [2002] No such file or directory’ in /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/db/Connection.php:348

Stack trace:

#0 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/db/Connection.php(348): PDO->__construct(‘mysql:host=loca…’, ‘root’, ‘’, NULL)

#1 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/db/Connection.php(308): yii\db\Connection->createPdoInstance()

#2 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/db/Connection.php(378): yii\db\Connection->open()

#3 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/db/mysql/Schema.php(187): yii\db\Connection->createCommand(‘SHOW FULL COLUM…’)

#4 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/db/mysql/Schema.php(93): yii\db\mysql\Schema->findColumns(Object(yii\db\TableSchema))

#5 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/db/Schema.php(110): yii\db\mysql\Schema->loadTableSchema(‘tbl_migration’)

#6 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/console/controllers/MigrateController.php(575): yii\db\Schema->getTableSchema(‘tbl_migration’, true)

#7 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/console/controllers/MigrateController.php(614): yii\console\controllers\MigrateController->getMigrationHistory(-1)

#8 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/console/controllers/MigrateController.php(151): yii\console\controllers\MigrateController->getNewMigrations()

#9 [internal function]: yii\console\controllers\MigrateController->actionUp(0)

#10 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/base/InlineAction.php(53): call_user_func_array(Array, Array)

#11 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/base/Controller.php(130): yii\base\InlineAction->runWithParams(Array)

#12 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/console/Controller.php(77): yii\base\Controller->runAction(’’, Array)

#13 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/base/Module.php(585): yii\console\Controller->runAction(’’, Array)

#14 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/console/Application.php(131): yii\base\Module->runAction(‘migrate’, Array)

#15 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/console/Application.php(99): yii\console\Application->runAction(‘migrate’, Array)

#16 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/base/Application.php(289): yii\console\Application->handleRequest(Object(yii\console\Request))

#17 /Applications/XAMPP/xamppfiles/htdocs/advanced/yii(26): yii\base\Application->run()

#18 {main}

Next exception ‘yii\db\Exception’ with message ‘SQLSTATE[HY000] [2002] No such file or directory’ in /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/db/Connection.php:313

Stack trace:

#0 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/db/Connection.php(378): yii\db\Connection->open()

#1 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/db/mysql/Schema.php(187): yii\db\Connection->createCommand(‘SHOW FULL COLUM…’)

#2 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/db/mysql/Schema.php(93): yii\db\mysql\Schema->findColumns(Object(yii\db\TableSchema))

#3 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/db/Schema.php(110): yii\db\mysql\Schema->loadTableSchema(‘tbl_migration’)

#4 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/console/controllers/MigrateController.php(575): yii\db\Schema->getTableSchema(‘tbl_migration’, true)

#5 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/console/controllers/MigrateController.php(614): yii\console\controllers\MigrateController->getMigrationHistory(-1)

#6 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/console/controllers/MigrateController.php(151): yii\console\controllers\MigrateController->getNewMigrations()

#7 [internal function]: yii\console\controllers\MigrateController->actionUp(0)

#8 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/base/InlineAction.php(53): call_user_func_array(Array, Array)

#9 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/base/Controller.php(130): yii\base\InlineAction->runWithParams(Array)

#10 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/console/Controller.php(77): yii\base\Controller->runAction(’’, Array)

#11 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/base/Module.php(585): yii\console\Controller->runAction(’’, Array)

#12 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/console/Application.php(131): yii\base\Module->runAction(‘migrate’, Array)

#13 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/console/Application.php(99): yii\console\Application->runAction(‘migrate’, Array)

#14 /Applications/XAMPP/xamppfiles/htdocs/advanced/vendor/yiisoft/yii2/yii/base/Application.php(289): yii\console\Application->handleRequest(Object(yii\console\Request))

#15 /Applications/XAMPP/xamppfiles/htdocs/advanced/yii(26): yii\base\Application->run()

#16 {main}

I also would like to know what’s the best environment based on OS X Mavericks.

Any help appreciated.

Thnx.

i have the same problem if i got to resolve this i’ll get back and show you how i did fix it i hope you do the same :)

Hmmm, it looks like there is something wrong with the mysql socket file… I’m still searching also ;-(

it works for me now,

the problem should be in this file; yii_advanced_app_folder/common/params.php

besure that your components.db variable have the right values for host, username … pay attention to your host if it does have some specific port other than the default ones.

after fixing your file re run the : php yii migrate

it should work.

I don’t see it… could you show sample of the working params.php please?

This fix mine,

http://www.yiiframework.com/forum/index.php/topic/47043-error-on-using-db-migration-w-mysql/

I also had the same problem. I have found the solution in this article and it works now great.

blog.dutchweber.com/exception-yiidbexception-sqlstatehy000-2002-file-directory/

Hope it will help you out. :)

Changing localhost to 127.0.0.1 works perfect. Thank you!

I had a similar situation during Yii2 (Advanced) migration (Xampp in Ubuntu 14.04 and PHP)

This is the message i’ve got:


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

So after googling and reading this thread and others I found out that could be the possible problem

the PHP extension "pdo_mysql" was disabled or not installed at all

and tried this:

at my terminal:

php -m

after realize that the module was not there…

sudo apt-get install php5-gd php5-mysql

and after a quick install the service must be re-started…

sudo /opt/lampp/lampp restart

…finally (retry migration)

php yii migrate

Migrated up successfully.

Hope you find it useful & work for others.

I found it at ask ubuntu but i’m unable to add a link or code, since this is my first post.

This work for me…Thanks man…!!

Cheers.

+1 Papu

I have XAMPP v3.2.4 on Windows 10 with php 7.4.
Whatever settings I make - Yii2 Advanced version migrations cannot be accomplished.
Phpinfo file shows that pdo_mysql is enabled.
MySql port is standard port - 3306.

php -m shows that “PDO” and “mysqlnd” are enabled. pdo_mysql is enabled in php.ini.

I have no idea, what I can do next?!

Please, give me a hint.
Thank you
Hristo

yii2_advance_migration_fail|690x432