Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

298
Visualizações
La conexión de Laravel DB no se actualiza después de cambiar la configuración

Esta es mi conexión de base de datos que he especificado.

 'mysql_test' => [ 'driver' => 'mysql', 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '3306'), 'database'=> '', '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, ],

Ahora estoy tratando de cambiar el valor de la database de datos del código y luego la conexión a la base de datos de esta manera

 for( $i = 1; $i <=4 ; $i++) { $db='test_'.$i; DB::connection('mysql_test')->statement('CREATE DATABASE '.$db.';' ); Config::set('database.connections.mysql_test.database' , $db); error_log(config('database.connections.mysql_test.database')); DB::reconnect('mysql_test'); error_log(DB::connection('mysql_test')->getDatabaseName()); }

el valor de config se cambia como en el primer error_log , obtengo mi valor de config modificado. Pero cuando me vuelvo a conectar a la misma conexión con la configuración actualizada, no obtengo el nombre de mi base de datos. La conexión no se asocia a ninguna base de datos.

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Puede intentar purge la conexión para que se desconecte y la elimine de la memoria caché en el Administrador de base de datos:

 ... Config::set('database.connections.mysql_test.database', $db); DB::purge('mysql_test'); dump(DB::connection('mysql_test')->getDatabaseName());
over 4 years ago · Santiago Trujillo Relatório

0

Debe volver a conectar la base de datos después de cambiar el valor de configuración

DB::reconnect("mysql_test");

over 4 years ago · Santiago Trujillo Relatório

0

DB::Purge() me lo arregló. Parece que esto era necesario después de la actualización de Laravel 8.x. Antes, las tareas de Laravel cambiaban las conexiones de la base de datos cuando era necesario. Después de alguna actualización, ya no lo hicieron.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda