无法通过 artisan 命令运行迁移
Posted
技术标签:
【中文标题】无法通过 artisan 命令运行迁移【英文标题】:Unable to run migration via artisan command 【发布时间】:2020-08-16 01:46:33 【问题描述】:我有一个 Laravel 7 项目并将其推送到实时服务器进行生产,但我无法成功运行迁移。我总是收到错误“拒绝访问”错误。
我可以确认该命令看到 .env 文件并且连接详细信息都正确。当我 ssh 进入服务器并使用保存在 .env 文件中的相同参数运行 mysql
命令时,连接成功。将详细信息添加到工作台和 SequelPro 也可以,所以我不确定为什么 php artisan migrate
不起作用
【问题讨论】:
你运行了 php artisan config:clear 吗? 是的,我确实运行了 config:clear 但同样的错误 Ok 运行php artisan tinker
然后执行env('DB_USERNAME')
等等看看系统打印了什么
好的,所以这非常有用,应该是一个答案。为什么 laravel 会修剪 DB_PASSWORD 中的密码?还是dotenv?好像有限制?
好的,我将把它作为答案发布。是的env
认为这是一个字符串。在内部它使用dotenv
。
【参考方案1】:
运行以下命令:
php artisan tinker
Tinker 是 Laravel 自己的复制品。
它会提示您输入命令。在这里,您可以通过在env
方法中输入字符串来检查和打印环境变量的值。
>>> env('DB_DATABASE')
其他数据库参数以此类推。
希望这会有所帮助。
如需更多帮助,您可以查看 tinker 的官方 Github 存储库: https://github.com/laravel/tinker
【讨论】:
以上是关于无法通过 artisan 命令运行迁移的主要内容,如果未能解决你的问题,请参考以下文章