有没有人有任何建议如何实施?
table1 将不断被INSERT
编入。这需要 table2 上的每一行都UPDATE
在每个 table1 上INSERT
。此外,我不知道 MySQL 是否最能负责的算法(相对于 PHP 计算速度)也必须应用于 table2 的每一行。
我想让 PHP 在用户执行的时候处理它INSERT
,但是我发现 PHP 页面在为用户提供连接后不是持久的(或者我明白,请告诉我这是错误的,所以我可以走那条路)。
所以现在我的问题是,如果我UPDATE
在 a 中使用一个总表TRIGGER
,我将拥有大量锁(或者我从 InnoDB 的锁定中了解到,当UPDAT
使用复合主键对整个表进行锁定时,因为该键的一部分将是UPDATE
d)。
现在,我正在考虑使用 cron 作业,但我宁愿他们INSERT
在 table1 上的用户而不是按计划开火。
所以我在想也许是一个CURSOR
...
什么方法最快并且“绝对”不锁定 table2?
提前谢谢了!
表结构
table2 都是INT
速度。但是,它有一个 2 列主键。这些列中的 1 列是UPDATE
d。该键适用于同样重要的 rapid SELECT
s。
table1 平均大约是 table2 行数的 2.5 倍。
table2 实际上非常小,~200mb。