所有的跟数据库有关的命令都不能在本地执行,全部要在虚拟机中执行才可以?????

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
最佳答案

按照课程中的设置,DB_HOST 用的应该是 127.0.0.1,通过这个主机,在虚拟机中只能操作虚拟机的数据,在本地环境则只能操作本地环境中的数据库,这两个数据库并不是同一个数据库。

5年前 评论
Cyline (楼主) 5年前
doderic (作者) 5年前
sunnylin 5年前
讨论数量: 4
KayuHo

本地和虚拟机访问数据库的端口不一样吧

5年前 评论

按照课程中的设置,DB_HOST 用的应该是 127.0.0.1,通过这个主机,在虚拟机中只能操作虚拟机的数据,在本地环境则只能操作本地环境中的数据库,这两个数据库并不是同一个数据库。

5年前 评论
Cyline (楼主) 5年前
doderic (作者) 5年前
sunnylin 5年前

更新一下,DB_HOST 是 192.168.10.10 时,端口号是 3306
DB_HOST 是 localhost 时,端口号是 33060

5年前 评论

目前我在虚拟机中运行 php artisan tink,DB_HOST 设置的是 localhost 端口号一直是 33060。DB_HOST 是 192.168.10.10 时出错。在本机中连接虚拟机中的数据库端口号用的是 3306。然后参照:
1:Forum > Homestead - SQLSTATE[HY000] [2002] Connection refused
answer1:Change 127.0.0.1 to localhost and it should work.
answer2:
If you set the DB_HOST to the APP_URL then it will always work, on your dev machine and the VM so like this:
APP_URL=http://homestead.app
DB_CONNECTION=mysql
DB_HOST=homestead.app
DB_PORT=3306
DB_DATABASE=#
DB_USERNAME=homestead
DB_PASSWORD=secret
设置成与 URL 一致的也行。没有试 php artisan migrate 命令。

5年前 评论