MySql:它会在很多插件上死锁 - Django?

时间:2017-06-27 20:10:49

标签: python mysql django

我想在Django中从sqlite3迁移到MySQL。现在我一直在Oracle,MS Server工作,我知道我可以让Exception一遍又一遍地尝试直到它完成...但是这是插入到同一个表中,数据必须立即插入,因为用户将不要因为在同一张桌子上等待INSERT而感到高兴。

所以我想知道,如果很多用户同时插入并且我该怎么做才能绕过它,那么死锁是否会发生在桌面上,以便用户不会感觉到它?

1 个答案:

答案 0 :(得分:1)

我不认为你可以通过快速插入来解决僵局。当你有两个进程,每个进程等待另一个进程执行某些操作然后可以进行另一个进程正在等待的更改时,就会发生死锁。如果只插入两个进程,数据库将按接收顺序处理它们,它们之间没有依赖关系。

如果您使用的是InnoDB,它会使用行级锁定。因此,除非两个插入都尝试插入相同的唯一键,否则它们甚至不应该相互锁定,它们可以同时完成。