gpt4 book ai didi

php - 如何使用 Laravel 为不同的客户使用不同的数据库?

转载 作者:行者123 更新时间:2023-11-29 16:35:31 26 4
gpt4 key购买 nike

我开发了一款软件来计划和管理学校 session 。到目前为止,一切都工作正常,但现在出于安全原因,我需要将 Laravel 应用程序提供给多所学校,而不使用相同的数据库。

现在我想根据客户端来自的 URL 使用不同的 MySQL 连接。

例如:

  • school1.example.org 使用 DB1,
  • school2.example.org 使用 DB2 等。

我的后端应该只位于一台具有外部数据库服务器的服务器上。所以也许是这样的:

  • API 服务器:99.99.99.10
  • DB1 服务器:88.88.88.10
  • DB2 服务器:88.88.88.20
  • 用户界面服务器:77.77.77.10

我怎么可能意识到这一点?理想情况下,如果新学校想要使用它,它将自动扩展,但如果部署需要手动工作,那么一开始就可以。

我希望您了解我的需求并能帮助我。

最诚挚的问候,马文

最佳答案

您可以遵循此方法并根据您的要求进行改进。

  1. 主数据库

    Create Schools table. In this, for each school, keep a record with the subdomain (unique identifier) and School DB connection information.

  2. 学校数据库

    This would contain all tables for your app. Each school will have a separate DB.

  3. 仅在 config/database.php 中保留Master DB 凭据。
  4. 使用服务提供商,通过使用查询主数据库/学校表,将事件学校数据库设置为默认数据库连接子域

关于php - 如何使用 Laravel 为不同的客户使用不同的数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53618437/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com