Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

myisam 'चयन' क्वेरी से निपटने के दौरान भी टेबल पर टेबल-लॉक रखें?

MyISAM में विभिन्न प्रकार के ताले हैं। एक SELECT ऑपरेशन एक READ LOCK . रखता है मेज पर। जब तक कोई सक्रिय WRITE LOCKS नहीं है, तब तक किसी भी समय कई सक्रिय रीड लॉक हो सकते हैं . संचालन जो तालिका को संशोधित करते हैं, उदा। INSERT , UPDATE , DELETE या ALTER TABLE लॉक लिखें मेज पर। राइट लॉक को केवल तभी टेबल पर रखा जा सकता है जब कोई सक्रिय रीड लॉक न हो; यदि सक्रिय रीड लॉक हैं, तो MyISAM सभी सक्रिय रीड लॉक की समय सीमा समाप्त होते ही राइट लॉक को सक्रिय करने के लिए कतारबद्ध कर देता है।

इसी तरह जब एक सक्रिय राइट लॉक होता है, तो टेबल पर रीड लॉक लगाने का प्रयास लॉक (और संबंधित क्वेरी) को तब तक कतारबद्ध करेगा जब तक कि टेबल पर राइट लॉक की समय सीमा समाप्त नहीं हो जाती।

अंतत:इसका मतलब यह है कि:

  • आपके पास कितने भी सक्रिय रीड लॉक हो सकते हैं (जिन्हें साझा लॉक भी कहा जाता है)
  • आपके पास केवल एक सक्रिय राइट लॉक हो सकता है (जिसे अनन्य लॉक भी कहा जाता है)

अधिक जानकारी के लिए देखें:http://dev.mysql। com/doc/refman/5.5/hi/internal-locking.html



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL में पदानुक्रमित टैगिंग

  2. मैं जावा का उपयोग करके पूर्ण दिनांक और समय एसक्यूएल कैसे सेट करूं, न कि केवल तिथि?

  3. MySQL FULLTEXT काम नहीं कर रहा है

  4. पाइप के साथ विशिष्ट पैकेज संस्करण स्थापित करना

  5. अगर शर्त के साथ MySQL अपडेट करें