2009-06-03 13 views
23

मैं RHEL5 पर MySQL 5.0.67 का उपयोग कर रहा हूं और मेरी कॉन्फ़िगरेशन को my-huge.cnf पर आधारित कर रहा हूं।MySQL - my.cnf में स्किप-लॉकिंग क्या करता है?

मुझे कॉन्फ़िगरेशन फ़ाइल में दिखाई देने वाली पंक्ति 'स्किप-लॉकिंग' के लिए MySQL मैन्युअल में कुछ भी नहीं मिल रहा है।

इसे 'skip_external_locking' के साथ प्रतिस्थापित किया जाना चाहिए या क्या मुझे पूरी तरह से पंक्ति को हटा देना चाहिए क्योंकि यह अब डिफ़ॉल्ट है।

MySQL Manual for skip-external-locking

धन्यवाद।

उत्तर

25

देख http://dev.mysql.com/doc/refman/5.0/en/external-locking.html

बोली:

आप कई सर्वरों कि एक ही डेटाबेस निर्देशिका (अनुशंसित नहीं) का उपयोग करते हैं, तो प्रत्येक सर्वर बाहरी ताला सक्षम होना चाहिए।

यह वास्तव में एक ही डेटा तक पहुंचने वाली कई प्रक्रियाओं द्वारा प्रस्तुत खतरों के साथ करना है। कई डीबीएमएस परिस्थितियों में आप ऑपरेशन करने से पहले तालिका/पंक्ति को लॉक करना चाहते हैं, और बाद में अनलॉक करना चाहते हैं। यह संभावित डेटा भ्रष्टाचार को रोकने के लिए है।

संपादित करें: देखने http://dev.mysql.com/doc/refman/4.1/en/news-4-0-3.html उद्धरण

नाम बदलकर --skip-लॉक --skip-बाह्य-लॉकिंग के लिए।

+0

धन्यवाद - लेकिन यह skip_external_locking है - मुझे यह जानना है कि 'स्किप-लॉकिंग' एक ही चीज़ है, और यदि कॉन्फ़िगरेशन फ़ाइल में आवश्यक है क्योंकि यह पहले से ही डिफ़ॉल्ट है? – Richard

+0

संपादित। यह सिर्फ एक नाम बदल गया –

+2

फिर से धन्यवाद, संक्षेप में - कॉन्फ़िगरेशन फ़ाइल की 'स्किप-लॉकिंग' पंक्ति को हटाया जा सकता है क्योंकि ए) यह पुराना है, चर का नाम बदल दिया गया है। बी) वैसे भी व्यवहार डिफ़ॉल्ट है – Richard

0

किसी के लिए भी एक अतिरिक्त टिप्पणी जो लिंक @Jonathan Fingland द्वारा प्रदान का पालन नहीं करता:
8.7.4. External Locking

यह विकल्प केवल MyISAM तालिकाओं पर लागू होता है।

रिचर्ड ने संकेत दिया कि बाहरी लॉकिंग डिफ़ॉल्ट रूप से अक्षम है। यदि आप लिखने के संचालन के लिए myisamchk का उपयोग करते हैं या यदि आप टेबल पैक करने के लिए myisampack का उपयोग करते हैं तो आपको बाहरी लॉकिंग सक्षम करने की आवश्यकता है।

आप myisamchk का उपयोग करते हैं MyISAM टेबल पर टेबल रखरखाव कार्यों को करने के लिए, आप यह सुनिश्चित करना चाहिए कि या तो सर्वर नहीं चल रहा है, या कि सर्वर बाहरी ताला ताकि सक्षम बना दिया है:

डॉक्स से

यह तालिका फ़ाइलों तक पहुंच के लिए myisamchk के साथ समन्वय करने के लिए आवश्यक फाइल फ़ाइलों लॉक करता है। MyISAM तालिकाओं को पैक करने के लिए myisampack के उपयोग के लिए भी यही सच है।

आप इस तरह की मरम्मत या के अनुकूलन टेबल, या यदि आप myisampack का उपयोग टेबल पैक करने के लिए, आप हमेशा सुनिश्चित करना चाहिए कि mysqld सर्वर तालिका का उपयोग नहीं कर रहा है के रूप में लिखने के संचालन के लिए myisamchk का उपयोग करते हैं। यदि आप mysqld को नहीं रोकते हैं, तो आप myisamchk चलाने से पहले कम से कम एक mysqladmin फ्लश-टेबल करना चाहिए। सर्वर और myisamchk एक साथ तालिकाओं तक पहुंचने पर आपकी तालिका दूषित हो सकती है।

संबंधित मुद्दे