Я разрабатываю программное обеспечение для планирования и управления собраниями в школах. Пока все работает нормально, но сейчас я нахожусь в той точке, когда мне нужно подать свое приложение Laravel нескольким школам без использования одной и той же базы данных по соображениям безопасности.
Теперь я хочу использовать разные MySQL-соединения в зависимости от того, с какого URL приходит клиент.
Например:
school1.example.org
использует DB1,school2.example.org
использует DB2 и так далее.Мой бэкэнд должен быть только на одном сервере с внешними серверами баз данных.
Так что может быть что-то вроде этого:
Как я мог понять это? В идеале это будет автоматически масштабироваться, если новые школы захотят использовать это, но если для развертывания необходима ручная работа, это будет хорошо с самого начала.
Я надеюсь, что вы понимаете, что мне нужно, и можете помочь мне с этим.
С наилучшими пожеланиями, Марвин
Вы можете следовать этому подходу и совершенствоваться в соответствии с вашими требованиями.
Создайте
Schools
Таблица. При этом для каждой школы ведите учет с субдомена (уникальный идентификатор) и Школа БД информация о соединении.
Это будет содержать все таблицы для вашего приложения. У каждой школы будет отдельная БД.
config/database.php
, Других решений пока нет …