Laravel执行migrate命令提示:No such file or directory的解决方法

在Laravel5中,有两种办法解决:

1.增加一个数据库配置项


'mysql'=> [

'driver'=>'mysql',

'host'=> env('DB_HOST','localhost'),

'database'=> env('DB_DATABASE','forge'),

'username'=> env('DB_USERNAME','forge'),

'password'=> env('DB_PASSWORD',''),

'charset'=>'utf8',

'collation'=>'utf8_general_ci',

'unix_socket'=>'/Applications/MAMP/tmp/mysql/mysql.sock',

'prefix'=>'laravel_',

'strict'=> false,

],

这里增加的一项是unix_socket,本机Mac上装的MAMP环境,路径是/Applications/MAMP/tmp/mysql/mysql.sock,查看自己路径的办法是在mysql中输入以下命令就可以看到:

2.修改.env配置

这个办法只能是临时修改,让migrate可以执行,然后必须改回来。

DB_HOST=localhost

DB_CONNECTION=mysql

DB_DATABASE=laravel

DB_USERNAME=root

DB_PASSWORD=tanteng

DB_PORT=8889

临时修改办法是把DB_HOST那里改成localhost:8889,也就是把端口号加上,再使用Laravel5的artisan命令执行migrate操作就可以了,但是操作完了要改回以前的写法,否则网站前台页面会打不开连不上数据库,提示错误:SQLSTATE[HY000] [2005] Unknown MySQL server host 'localhost:8889' (0)

好了,这样就解决了使用Laravel5的migrate报错的问题。


转自:http://www.jb51.net/article/81009.htm(谢谢亲.好久才发现解决这个问题的办法.)

你可能感兴趣的:(Laravel执行migrate命令提示:No such file or directory的解决方法)