我们有一种情况,我们可以 (A) 使用表前缀在一个 MySQL 数据库中部署应用程序的实例,或者 (B) 为应用程序的每个实例使用不同的 MySQL 数据库,例如,
设置“A”:
central_database
app1_table1
app1_table2
app1_tablen
...
appn_table1
appn_table2
appn_tablen
Run Code Online (Sandbox Code Playgroud)
最终结果是一个包含许多表的大数据库。
设置“B”:
app1_db
table1
table2
tablen
...
appn_db
table1
table2
tablen
Run Code Online (Sandbox Code Playgroud)
最终结果是许多带有一些表的数据库。
所有条件都相同(例如,数据量、应用程序实例数量等),使用这两种方法的优缺点是什么?什么会对数据库性能和维护有害?该应用程序基于 PHP 5,在 Apache 2.x 上运行,我们运行的是 MySQL 5.x。
非常感谢您的时间和想法!