sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo restablecer dinámicamente la configuración de la base de datos en Laravel?

No probado ya que no tengo algo como esto configurado actualmente, pero estoy seguro de que necesita purgar el DB después de un cambio de configuración:

$databases = array();
foreach($servers as $server){
    // Setting Config
    Config::set('database.connections.mysqlClient.host',$server->ip);
    Config::set('database.connections.mysqlClient.password',$server->mysql_password);

    foreach($server->databases as $database){
        DB::purge('mysqlClient'); // <-- Get rid of old connection
        $database->size = DB::connection('mysqlClient')->select('SELECT Round(Sum(data_length + index_length) / 1024 / 1024, 1) "db_size"
            FROM   information_schema.tables 
            where table_schema = "'.$database->name.'";'
        )[0]->db_size;

        $databases[] = $database;
    }
}

Editar:también hay \DB::reconnect('mysqlClient'); pero la gente tiene problemas documentados con él