базе.
Но при обработке данных, их должна отправлять в другую MySQL базу.
Все пишут о том, что якобы если создать еще одну настройку конфиг файла а потом с ней работать по типу
DB::connection('ExportDB')->.........
То все будет гуд.
но у меня баз несколько, как самый лучший вариант я так понимаю необходимо добавить все настройки баз в конфиг.
Но как быть с динамическим добавлением? и работой с разными базами? Когда к примеру 1000 баз ....
Хранить все это в одном файле.... как то не то ..
Идея у меня была проста, когда идет обращение через апи, мы зная кто обращается просто с настроек с базы лары достаем необходимые настройки той или другой базы и работаем с ней.
Изучили немного варианты и один с них:
это назначить конфигурации настройки в динамике
Config::set("database.connections.ExportDB", $CurrentDB);
DB::purge('ExportDB');
и работать с ней
DB::connection('ExportDB')->table......
И все вроде бы хорошо... тока вот есть одно но.. оказывается иногда оно не успевает подхватить данные с установленных настроек и в итоге получаю
SQLSTATE[HY000] [2002] Connection refused
А как Вы работаете с разными базами?
Храни креды к базам зашифрованными в основной базе
так так и есть они там хранятся Вопрос, как воспользоваться ними в динамическом подключение
Config::set(database.connections.{id} => сюда сформируй конфиг массив
ну так я ж пишу что заметилипроблемы
у меня креды у всех одинаковые, поэтому я сделал одно подключение в конфиге, а в потом подключаю почти как ты config(['database.connections.tenant.database' => $dbName]); DB::purge('tenant'); DB::reconnect('tenant'); проблем не было. Эта ошибка может быть из за настроек бд
multitenant гугли. У самого подобное приложение. Кодовая база одна, БД разные на каждый поддомен.
Обсуждают сегодня