我是Laravel的新手,因此我在迁移方面遇到问题。我尝试了此处描述的所有内容,但均未成功

时间:2019-01-03 15:14:08

标签: laravel xampp

我是Laravel的新手。我在MacOS Mojave上安装了MAMP和Xampp 7.3.0,但是由于phpmyadmin无法正常工作,目前在80端口上使用了Xampp,而MySQL端口已重新配置为33060。 我遇到“ php artisan migration”问题,因为每次尝试迁移时都会显示以下错误:

SQLSTATE [HY000] [2002]没有这样的文件或目录(SQL:

select * from information_schema.tables where table_schema = land
  on_app and table_name = migrations

我尝试在线搜索,采用了建议的解决方案,但似乎没有一个对我有用。我尝试安装MySQL 8.0.13,但是遇到caching_sha2_password提示我卸载它,并使用显示的版本消息“ mysql Ver 14.14 Distrib 5.7.24”安装了MySQL5.7,适用于osx10.14(x86_64),使用EditLine包装器” 但是,我决定将文件夹复制到httdoc并重新配置我的.env。

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=33060
DB_DATABASE=landon_app
DB_USERNAME=root
DB_PASSWORD=

database.php

'mysql' => [
            'driver' => 'mysql',
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '33060'),
            'database' => env('DB_DATABASE', 'landon_app'),
            'username' => env('DB_USERNAME', 'root'),
            'password' => env('DB_PASSWORD', ''),
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'strict' => true,
            'engine' => null,


        ],

AppServiceProvider

<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\Schema; //This must be added 


class AppServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        //
        Schema::defaultStringLength(191); //This must be added to allow connection to the database
    }

    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()
    {
        //
    }
}

每次尝试迁移时收到的错误:

3 个答案:

答案 0 :(得分:1)

只需在您的.env文件中更改此行:

DB_HOST=localhost

收件人

DB_HOST=127.0.0.1

答案 1 :(得分:0)

从几个简单的调试步骤开始:
-您可以使用提供的凭据访问mysql服务器吗?
-您可以验证您的服务器上是否存在名为“ landon_app”的数据库吗?
-您也可以尝试将主机从localhost更改为127.0.0.1

答案 2 :(得分:0)

Laravel 4:将app / config / database.php文件中的“主机”从“本地主机”更改为“ 127.0.0.1”

Laravel 5:将.env文件中的“ DB_HOST”从“ localhost”更改为“ 127.0.0.1”