svn - Exposing SQL Server database objects as files in a file system -
एक से अधिक फाइल सिस्टम है
अधिकांश संस्करण नियंत्रण उपकरण स्थानीय डिस्क फ़ाइल सिस्टम पर काम करते हैं।
अधिकतर रिलेशनल डेटाबेस सिस्टम के लिए डेटाबेस ऑब्जेक्ट करना एक फ़ाइल सिस्टम में मौजूद है, क्योंकि वही वस्तु की पहचान करने वाला एक शाब्दिक नाम है और निर्माण स्क्रिप्ट को पुनः प्राप्त किया जा सकता है या कम से कम इस्तेमाल किया जा सकता है यह नाम।
लेकिन यह स्थानीय डिस्क फाइल सिस्टम नहीं है, और नतीजतन वे सीवीएस या एसवीएन जैसे उपकरणों के लिए अदृश्य हैं, जो स्थानीय डिस्क फ़ाइल सिस्टम पर कड़ाई से कार्य करते हैं।
P> डेटाबेस ऑब्जेक्ट पर एसवीएन लागू करने के लिए, उन्हें स्थानीय डिस्क फाइल सिस्टम में दोहराया जाना चाहिए, और स्थानीय डिस्क फाइल सिस्टम में परिवर्तन को डेटाबेस में दोहराया जाना चाहिए।
उपयोग के विभिन्न मोड
स्रोत कोड के विपरीत, जिसमें प्रत्येक डेवलपर एक निजी कार्य प्रतिलिपि बनाए रखता है, डेवलपर नेटवर्क पर किसी सर्वर पर एक साझा डेटाबेस पर काम करते हैं। जबकि विज़ुअल स्टूडियो डेटाबेस के माउंट-ऑन-डिमांड प्रोजेक्ट-स्थानीय प्रतियों के लिए प्रत्यक्ष समर्थन प्रदान करता है, डेवलपर्स ने इस सुविधा को त्याग दिया है क्योंकि इसमें परिवर्तनों को मर्ज करने का कोई सुविधाजनक और विश्वसनीय तरीका नहीं है।
हालांकि, डेटाबेस संरचना को कॉपी-मर्ज संस्करण नियंत्रण प्रणाली द्वारा प्रबंधित किया जाता है जैसे सीवीएस या एसवीएन, प्रसार और विलय ज्यादातर स्वचालित (बार संघर्ष) होगा और अब कोई डाटाबेस साझा करने का कोई कारण नहीं है।
एससीसी एक विकल्प के रूप में
माइक्रोसॉफ्ट एसक्यूएल मैनेजमेंट स्टूडियो एससीसी स्पेक का इस्तेमाल करने वाली किसी भी चीज के लिए संस्करण नियंत्रण का समर्थन करता है। माइक्रोसॉफ्ट केवल वीएसएस (ब्लिच) को सूचीबद्ध करता है, लेकिन गूगल कई विकल्पों का खुलासा करता है हालांकि , एससीसी सभी लॉकिंग के बारे में है - डबल ब्लीच
फाइल सिस्टम के बीच प्रतिलिपि बनाना
संपूर्ण प्रश्न अब फ़ाइल सिस्टम के बीच नकल करने के लिए समर्पित है। CodePlex में VS2005 / SQL2005 के लिए एक कार्यान्वयन होता है लेकिन यह VS2008 / SQL2008 के साथ काम नहीं करता है।
इस बिंदु पर मुझे लगता है कि "मुझे इस बारे में कैसे जाना चाहिए" का सवाल है, हालांकि संतोषजनक रूप से संबोधित किया गया है, हालांकि मैं मुझे यकीन नहीं है कि कैसे पुरस्कार अंक।
आप अपने इनपुट के लिए सभी संबंधित के लिए धन्यवाद।
कुछ ठोस सवाल उठते हैं, ज्यादातर स्कीमा ऑब्जेक्ट।
-
- तालिका
- create और
alter
स्क्रिप्ट निकालने का तरीका। - संग्रहीत कार्य
- फ़ंक्शन
- ट्रिगर
- सूचकांक
- विदेशी कुंजी
- निर्भरता के क्रम में तालिका जनसंख्या लिपियों को कैसे निकालना है
- स्कीमा में परिवर्तनों को कुशलतापूर्वक कैसे पता लगा सकता है (
sys.objects
पर ट्रिगर्स के अभाव में) यह चुनाव करने के लिए आवश्यक होगा, यह बेहतर और सस्ता हो सकता है)
परिवर्तनों का पता लगा रहा है
यह मेरे ध्यान में आ गया है कि यह संभव है नीतियों का उपयोग करके स्कीमा में परिवर्तन करने के लिए कार्रवाई करने के लिए बाध्य करें निर्भरता के आदेश और एक तालिका निर्माण विवरण स्क्रिप्ट के बारे में सवाल बने रहेंगे
हम लाल गेट का उपयोग करते हैं एसएसएन में बेसलाइनों के लिए संग्रहीत पटकथा फाइलों के खिलाफ वर्तमान स्कीमा की तुलना करना, संस्करणिंग आदि
हालांकि, हमारा मालिक संदर्भ वास्तव में उत्पादन की एक बहाल प्रति है यह हमारा आधार रेखा है और चाहिए एसवीएन के अनुरूप होगा यह मास्टर स्क्रिप्ट SVN को कम करने के लिए तैनाती प्रक्रिया का हिस्सा है, जो कि लाल गेट उपयोगी होता है: यह केवल बदली हुई वस्तुओं के लिए फाइलों को बदलता है।
हम आगे हमारे कामकाजी स्क्रिप्ट और स्क्रिप्ट (केवल परिवर्तन) को अलग करते हैं, इसलिए हमारे पास हमेशा एक मास्टर डीबी और एसवीएन में एक आधार रेखा है हम केवल विकास के लिए स्क्रिप्ट का प्रयोग करते हैं।
डेटाबेस स्रोत नियंत्रण अच्छी चीजें है, लेकिन किसी SQL सर्वर ऑब्जेक्ट की प्रकृति के कारण कार्यान्वयन करना चुनौतीपूर्ण है: कुछ पंक्तियों में एक पंक्ति या 3 ... < / P>
Comments
Post a Comment