Php 用于客户端的多个数据库
我需要MySQL数据库方面的帮助 我正在构建一个客户管理系统,其中1000多个用户将使用该系统,每个用户将拥有自己的客户端,而这些客户端又可以超过100个或更多(无限)。我在想,我应该在MySQL中有单独的数据库,还是为用户提供一个数据库?因此,当用户创建自己的帐户时,它将自动仅为该用户创建所有数据库文件,而另一个用户将拥有另一个单独的数据库,依此类推Php 用于客户端的多个数据库,php,mysql,database,database-design,Php,Mysql,Database,Database Design,我需要MySQL数据库方面的帮助 我正在构建一个客户管理系统,其中1000多个用户将使用该系统,每个用户将拥有自己的客户端,而这些客户端又可以超过100个或更多(无限)。我在想,我应该在MySQL中有单独的数据库,还是为用户提供一个数据库?因此,当用户创建自己的帐户时,它将自动仅为该用户创建所有数据库文件,而另一个用户将拥有另一个单独的数据库,依此类推 请帮助。我认为您描述的问题称为“多坦能”体系结构 没有正确或错误的答案——有一大堆考虑因素 数据大小绝对是一个问题,但您提到的数字还不够大,不足
请帮助。我认为您描述的问题称为“多坦能”体系结构 没有正确或错误的答案——有一大堆考虑因素 数据大小绝对是一个问题,但您提到的数字还不够大,不足以产生很大的差异。MySQL中的一百万行是微不足道的(只要您可以使用索引) 其他考虑:
- 可维护性:拥有一个“大型”数据库意味着新版本只需迁移一次——添加列或表、创建新索引等在概念上可能要容易得多,因为您不必为每个客户端重复相同的脚本。然而,有些操作可能会让所有客户离线数小时;这可能是件坏事
- 版本控制:如果您打算随着时间的推移升级解决方案,例如添加新功能等,那么拥有一个数据库意味着您必须同时升级所有客户机,无论他们是否愿意。它减少了工作量和复杂性,但有些客户端可能还没有准备好升级(例如,如果他们正在从系统导出数据,而您正在更改架构)李>
- 服务级别:许多SaaS提供商提供不同的服务级别。您可能会考虑共享基础设施的“青铜”和“专用的基础设施”“黄金”。
- 行长度并不是决定系统性能的唯一因素——如果让用户创建自己的报告,可能会降低系统速度;您可能需要在一夜之间运行复杂的脚本来归档数据等。一旦这些问题变得无法解决,就可能需要对客户进行分区李>