लेन-देन लॉग और बाइनरी लॉग के बीच अंतर क्या है?


9

SQL सर्वर शॉप से ​​आ रहा है, मैं अब MySQL के साथ काम करता हूं और मैं उत्सुक था।

MySQL के बाइनरी लॉग और MSSQL के लेन-देन लॉग के बीच अंतर क्या हैं?

इस प्रकार अब तक के आउटलुक के अनुसार, ऐसा लगता है कि MSSQL के अनुसार प्रति लेन-देन लॉग के विपरीत MySQL उदाहरण में केवल एक बाइनरी लॉग है।


दोनों के बीच तुलना देखना शानदार होगा।
— रयान

इस सवाल का एक और जवाब है dba.stackexchange.com/questions/72904/…
— LawrenceLi

जवाबों:


5

प्रश्न का केवल MySQL भाग का उत्तर देना

एक बाइनरी लॉग रिकॉर्ड्स SQL ​​स्टेटमेंट को पूरा करता है। आपके पास कई बाइनरी लॉग हो सकते हैं। डिफ़ॉल्ट सेटिंग्स के तहत, बाइनरी लॉग 1G मार्क पर घूमते हैं ( एक्सपायर_लॉग्स_डे और मैक्स_बिनलॉग_साइज़ देखें )।

आप निम्न में से किसी एक को चलाकर बाइनरी लॉग देख सकते हैं:

SHOW BINARY LOGS;
SHOW MASTER LOGS;

वर्तमान मास्टर लॉग हमेशा सूची में अंतिम होता है। बस अंतिम बाइनरी लॉग को देखने के लिए, जो वर्तमान में है, इसे चलाएं:

SHOW MASTER STATUS;

जब यह InnoDB भंडारण इंजन और लेनदेन की बात आती है

  • एक मेटाडेटा फ़ाइल है (ibdata1, जो डिफ़ॉल्ट रूप से, डेटा पेज, इंडेक्स पेज, टेबल मेटाडेटा और एमवीसीसी जानकारी) रखती है, जिसे इनोबीडी टेबलस्पेस फ़ाइल के रूप में भी जाना जाता है।
  • आपके पास एक से अधिक ibdata फ़ाइल हो सकती है ( innodb_data_file_path देखें )
  • फिर से लॉग होते हैं (ib_logfile0 और ib_logfile1)
  • आपके दो से अधिक लॉग हो सकते हैं ( innodb_log_files_in_group देखें )
  • यदि आप innodb_file_per_table अक्षम है, तो आप कई ibdata फ़ाइलों में डेटा और अनुक्रमित फैला सकते हैं
  • आप ibdata से डेटा और इंडेक्स पेजों को अलग-अलग टेबलस्पेस फाइलों में अलग कर सकते हैं ( यह कैसे सेट करने के लिए innodb_file_per_table और StackOverflow पोस्ट देखें )

आह मैं देख रहा हूं, प्रतिक्रिया के लिए धन्यवाद रॉलैंड
— रयान
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.