php - Laravel 迁移 SQLSTATE[HY000] [2002] 连接被拒绝
问题描述
尝试在 laravel 中迁移到 localhost 时出现错误。我正在学习如何使用 laravel 但我无法连接到 phpmyadmin 数据库。
这是可视代码终端中的错误消息
当我将 db host 更改为 localhost 它给我一个 PDOException::("SQLSTATE[HY000] [2002] No such file or directory") 错误
这是我的环境。文件
APP_NAME=LSAPP
APP_ENV=local
APP_KEY=base64:Cv3S1V8GT1RKgpfilYmQM4aiM1HoXlwUMfh1oeL424I=
APP_DEBUG=true APP_URL=http://localhost
LOG_CHANNEL=stack
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=lsapp
DB_USERNAME=root
DB_PASSWORD=
BROADCAST_DRIVER=log C
ACHE_DRIVER=file
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1
MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
我将 DBHOST 更改为 localhost 并尝试了其他数据库用户名和数据库密码,但没有运气。我的创建帖子代码如下
Schema::create('posts', function (Blueprint $table) {
$table->bigIncrements('id');
$table->string('title');
$table->mediumText('body');
$table->timestamps();
});
我还更改了我的 AppServiceProvider.php 以包含 Schema::defaultStringLength(191); 我也在 phpmyadmin 中创建了空表。
解决方案
第一次尝试
DB_HOST=localhost
php artisan migrate --env=production(or whatever environment)
然后
sudo service mysqld start
推荐阅读
- c# - Entity Framework Core:在 InMemoryDb 测试中启用重复主键
- javascript - 创建一个递归函数,从节点的每个最终元素返回其完整路径
- c++ - Visual Studio Code 更新包含路径
- python - 如何使用 Pydroid 3 制作安卓应用程序?
- javascript - 有什么作用?。和 ??在javascript中的意思
- amazon-web-services - 不同地域之间的EC2如何通过AWS上的内网进行通信?
- python - 如何从运行在同一台机器上的 Docker 内部加载运行在主机中的 MongoDB 中的数据?
- javascript - fetch api 为某些 url 提供 GET "url" net::ERR_HTTP2_PROTOCOL_ERROR 200
- r - 如何在 mgcv::gam() 函数中禁用多线程?
- server - 在 Ubuntu 上安装种子跟踪器