我正在尝试将多个迁移表迁移到多个数据库中,但出现这种错误:
// 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'),
]) : [],
],
在迁移表中使用此。
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