手机
当前位置:查字典教程网 >编程开发 >php教程 >Laravel执行migrate命令提示:No such file or directory的解决方法
Laravel执行migrate命令提示:No such file or directory的解决方法
摘要:本文实例讲述了Laravel执行migrate命令提示:Nosuchfileordirectory的解决方法。分享给大家供大家参考,具体如下...

本文实例讲述了Laravel执行migrate命令提示:No such file or directory的解决方法。分享给大家供大家参考,具体如下:

今天使用Laravel命令行工具操作数据库迁移操作时报错,提示mysql 2002错误,如图:

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

查看数据库配置没错呀,网站前台也可以打开,说明能连上,那是什么原因呢?

在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中输入以下命令就可以看到:

show variables like '%sock%';

如下图所示:

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

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.tantengvip.com/2015/12/laravel-migrate-mysql-2000/

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

【Laravel执行migrate命令提示:No such file or directory的解决方法】相关文章:

PHP IDE PHPStorm配置支持友好Laravel代码提示方法

第十节 抽象方法和抽象类 [10]

php循环table实现一行两列显示的方法

VML绘图板②脚本--VMLgraph.js、XMLtool.js

分页显示Oracle数据库记录的类之一

PHP学习之PHP运算符

VFP与其他应用程序的集成

模拟xcopy的函数

php命令行(cli)下执行PHP脚本文件的相对路径的问题解决方法

php计数器的设计与实现第1/2页

精品推荐
分类导航