Вы можете определить несколько подключений к базе данных на config/database.php
И когда пользователь входит в систему, измените значение конфигурации этой переменной в соответствии с информацией о пользователе.
Допустим, вы добавили новое соединение с базой данных называется tenant_db
, а целевое имя базы данных пользователя - «tenant_user_db_1», имя пользователя - «tenant_user_1», пароль - «tenant_user_1_password»
Затем вы можете изменить подключение к базе данных, используя это
$connection = "tenant_db";
$dbname = "tenant_user_db_1";
$username = "tenant_user_1";
$password = "tenant_user_1_password";
config(['database.connections.'.$connection.'.database' => $database]);
config(['database.connections.'.$connection.'.username' => $username]);
config(['database.connections.'.$connection.'.password' => $password]);
DB::reconnect($connection);