当我注意到他们有奇怪的设计时,我被要求在 MySQL DB 上做一些 PHP 脚本来显示一些数据。他们希望执行一项研究,该研究需要为每个用户收集多达 2000 条记录,并且他们会自动为每个注册的用户创建一个新表。这是现阶段的一项试点研究,因此他们有大约 30 个表格,但他们应该有 3000 个用户进行真正的研究。
我想建议将所有这些都收集在一个表中,但由于在研究期间该数据库每分钟可能有大约 1500 次 INSERT,所以我想先在这里问这个问题。这会导致 MySQL 中的表锁吗?那么,是一张每分钟插入 1500 条、最大大小为 6,000,000 条记录的表,还是每分钟 30 条插入、最大大小为 2000 条记录的 3000 张表。我想建议第一个选项,但我想确保它不会引起任何问题。我读到 InnoDB 有行级锁。那么,与一个表选项相结合会有更好的性能吗?