尝试在laravel中迁移到localhost时出现错误。我正在学习如何使用laravel,但无法连接到phpmyadmin数据库。
这是可视代码终端中的错误消息
当我将数据库主机更改为本地主机时,它给我一个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中创建了空表。
答案 0 :(得分:1)
第一次尝试
image
DB_HOST=localhost
然后
php artisan migrate --env=production(or whatever environment)
答案 1 :(得分:0)
只需在您的config / database.php文件中添加'port'=> env('DB_PORT',3306),然后在.env中设置该值,例如DB_PORT = 33060
'port' => env('DB_PORT', 3306),