最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
LARAVEL执行MIGRATE命令:NO SUCH FILE OR DIRECTORY
时间:2015-12-29 编辑:简简单单 来源:一聚教程网
今天使用Laravel命令行工具操作数据库迁移操作时报错,提示mysql 2002错误,如图:
查看数据库配置没错呀,网站前台也可以打开,说明能连上,那是什么原因呢?
在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%';
如下图所示:
mysql-show-socket
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报错的问题
-
上一个: LARAVEL中TRAIT的使用教程详解
-
下一个: php获取二维数组中key键值的例子
相关文章
- PHP导出数据超时的优化建议解读 10-31
- PHP之mysql位运算解析 10-31
- Laravel实现登录跳转功能解析 10-31
- php双向队列解读 10-31
- Laravel异常上下文解决教程 10-24
- php数组查询元素位置方法介绍 10-24