InvalidArgumentException:未配置数据库[s_request]

问题描述 投票:0回答:1

我正在尝试将多个迁移表迁移到多个数据库中,但出现这种错误:

 // If the configuration doesn't exist, we'll throw an exception and bail. 149| $connections = $this->app['config']['database.connections']; 
150| 
151| if (is_null($config = Arr::get($connections, $name))) { > 
152| throw new InvalidArgumentException("Database [{$name}] not configured."); 153| } 
154| 
155| return (new ConfigurationUrlParser) 
156| ->parseConfiguration($config); Exception trace: 1 Illuminate\Database\DatabaseManager::configuration("s_request") /home/dipu/A1pathshala/vendor/laravel/framework/src/Illuminate/Database/DatabaseManager.php:115 2 Illuminate\Database\DatabaseManager::makeConnection("s_request") /home/dipu/A1pathshala/vendor/laravel/framework/src/Illuminate/Database/DatabaseManager.php:86 Please use the argument -v to see more details.

这是我的配置:

。env

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=A1pathshala
DB_USERNAME=root
DB_PASSWORD=

DB_CONNECTION_SECOND=mysql2
DB_HOST_SECOND=127.0.0.1
DB_PORT_SECOND=3306
DB_DATABASE_SECOND=school_request
DB_USERNAME_SECOND=root
DB_PASSWORD_SECOND=

database.php

    connection=>[
    'mysql' => [
                'driver' => 'mysql',
                'url' => env('DATABASE_URL'),
                'host' => env('DB_HOST', '127.0.0.1'),
                'port' => env('DB_PORT', '3306'),
                'database' => env('DB_DATABASE', 'forge'),
                'username' => env('DB_USERNAME', 'forge'),
                'password' => env('DB_PASSWORD', ''),
                'unix_socket' => env('DB_SOCKET', ''),
                'charset' => 'utf8mb4',
                'collation' => 'utf8mb4_unicode_ci',
                'prefix' => '',
                'prefix_indexes' => true,
                'strict' => true,
                'engine' => null,
                'options' => extension_loaded('pdo_mysql') ? array_filter([
                    PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
                ]) : [],
            ],

            //secondary database
            'mysql2' => [
                'driver' => 'mysql',
                'url' => env('DATABASE_URL'),
                'host' => env('DB_HOST_SECOND', '127.0.0.1'),
                'port' => env('DB_PORT_SECOND', '3306'),
                'database' => env('DB_DATABASE_SECOND', 'forge'),
                'username' => env('DB_USERNAME_SECOND', 'forge'),
                'password' => env('DB_PASSWORD_SECOND', ''),
                'unix_socket' => env('DB_SOCKET', ''),
                'charset' => 'utf8mb4',
                'collation' => 'utf8mb4_unicode_ci',
                'prefix' => '',
                'prefix_indexes' => true,
                'strict' => true,
                'engine' => null,
                'options' => extension_loaded('pdo_mysql') ? array_filter([
                    PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
                ]) : [],
            ],
database-migration laravel-6
1个回答
0
投票

在迁移表中使用此。

 public function up()
    {
        Schema::connection('mysql2')->create('schools', function (Blueprint $table) {
            $table->bigIncrements('id');
            $table->timestamps();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::connection('mysql2')->dropIfExists('schools');
    }
}

并且正在迁移使用此

php artisan migrate --database=mysql2
© www.soinside.com 2019 - 2024. All rights reserved.