MYSQL的FOR UPDATE
語(yǔ)句并不是用來(lái)提高并發(fā)性能的,而是用來(lái)進(jìn)行行級(jí)鎖定,確保在事務(wù)中被鎖定的行不會(huì)被其他事務(wù)修改。當(dāng)一個(gè)事務(wù)使用FOR UPDATE
語(yǔ)句鎖定一行數(shù)據(jù)時(shí),其他事務(wù)要修改該行數(shù)據(jù)都會(huì)被阻塞,直到鎖被釋放。這樣可以保證數(shù)據(jù)的一致性和避免并發(fā)問題,但并不是為了提高并發(fā)性能。
提高并發(fā)性能的方法通常包括優(yōu)化數(shù)據(jù)庫(kù)設(shè)計(jì)、索引的使用、合理的查詢語(yǔ)句編寫、適當(dāng)?shù)姆直矸謳?kù)等措施。而使用FOR UPDATE
語(yǔ)句一般是在需要確保數(shù)據(jù)一致性的情況下使用,不建議濫用。