यह इस बात पर निर्भर करता है कि आप "सबसे तेज़" कैसे परिभाषित करते हैं।
जैसा कि जोएल कहते हैं, डेवलपर का समय महंगा है। Mysqldump बहुत सारे मामलों को काम करता है और संभालता है, अन्यथा आपको खुद को संभालना होगा या अन्य उत्पादों का मूल्यांकन करने में समय बिताना होगा, यह देखने के लिए कि क्या वे उन्हें संभालते हैं।
प्रासंगिक प्रश्न हैं:
आपका उत्पादन डेटाबेस स्कीमा कितनी बार बदलता है?
नोट: मैं टेबल, कॉलम, व्यू और इसी तरह की चीजों को जोड़ने, हटाने या नाम बदलने की बात कर रहा हूं जो वास्तविक कोड को तोड़ देंगी।
आपको कितनी बार उत्पादन डेटा को विकास परिवेश में डालने की आवश्यकता है?
मेरे अनुभव में, बहुत बार नहीं। मैंने आमतौर पर पाया है कि महीने में एक बार पर्याप्त से अधिक है।
mysqldump को कितना समय लगता है?
यदि यह 8 घंटे से कम है तो इसे क्रॉन जॉब के रूप में रात भर किया जा सकता है। समस्या हल हो गई।
क्या आपको सभी डेटा चाहिए?
इसे ऑप्टिमाइज़ करने का दूसरा तरीका डेटा का प्रासंगिक सबसेट प्राप्त करना है। बेशक इसके लिए संस्थाओं और सभी संबंधित संबंधित संस्थाओं का एक सबसेट प्राप्त करने के लिए एक कस्टम स्क्रिप्ट की आवश्यकता होती है, लेकिन यह सबसे तेज अंतिम परिणाम देगा। स्क्रिप्ट को स्कीमा परिवर्तनों के माध्यम से बनाए रखने की भी आवश्यकता होगी, इसलिए यह एक समय लेने वाला दृष्टिकोण है जिसे पूर्ण अंतिम उपाय के रूप में उपयोग किया जाना चाहिए। उत्पादन के नमूने इतने बड़े होने चाहिए कि उनमें डेटा का पर्याप्त व्यापक नमूना शामिल हो और किसी भी संभावित प्रदर्शन समस्या की पहचान हो सके।
निष्कर्ष
मूल रूप से, बस mysqldump का उपयोग तब तक करें जब तक आप बिल्कुल नहीं कर सकते। किसी अन्य समाधान पर समय व्यतीत करना समय को विकसित करने में व्यतीत नहीं करना है।