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