मुझे प्रोग्राम करने की आवश्यकता है (टी-एसक्यूएल) SQL सर्वर 2008 में डेटाबेस बैकअप को पुनर्स्थापित करें। यह बैकअप एक अलग सर्वर से आता है और मूल डेटाबेस नाम भी भिन्न हो सकता है। (असल में, मैं किसी सर्वर से किसी अन्य सर्वर पर किसी डेटाबेस से डेटाबेस की प्रतिलिपि बना रहा हूं।)गंतव्य पथ या फ़ाइल नाम जानने के बिना SQL सर्वर डेटाबेस बैकअप को पुनर्स्थापित कैसे करें?
जाहिर है, मुझे RESTORE DATABASE ... WITH MOVE
का उपयोग करना है, जो काम करता है, लेकिन मुझे यह जानना होगा कि फ़ाइलों को कहां बहाल किया जाना चाहिए और उन्हें कैसे नामित किया जाना चाहिए। खोज के बावजूद, मुझे नहीं मिला कि सबसे बुनियादी कार्य क्या प्रतीत होता है: केवल डिफ़ॉल्ट पथ और फ़ाइल नामों का उपयोग करें, यानी, जब आप CREATE DATABASE
जारी करते हैं तो SQL सर्वर जो भी करता है - आपको पथ निर्दिष्ट करने की आवश्यकता नहीं है वह आदेश, तो RESTORE
के लिए इसकी आवश्यकता क्यों है?
क्या मैंने कुछ मामूली समाधान को अनदेखा किया है, या क्या मुझे वास्तव में फ़ाइलों को सूचीबद्ध करना होगा, किसी भी तरह से SQL सर्वर कॉन्फ़िगरेशन से डेटाबेस निर्देशिका ढूंढनी होगी, और उस जानकारी का उपयोग RESTORE
कमांड बनाने के लिए करें? धन्यवाद।
(पोस्टग्रेएसक्यूएल के साथ तुलना करना, जहां pg_restore का उपयोग करते समय, आप पहले से बनाए गए गंतव्य डेटाबेस को निर्दिष्ट करते हैं; और जब आप इसे बना रहे थे तो आपके पास विकल्प था - अनिवार्य नहीं - एक गैर-डिफ़ॉल्ट टेबलस्पेस निर्दिष्ट करने के लिए, लेकिन यदि आपने नहीं किया टी, आप बस परवाह नहीं करते कि फाइलें भौतिक रूप से संग्रहीत हैं।)
स्टैक ओवरव्लो में आपका स्वागत है: यदि आप कोड, एक्सएमएल या डेटा नमूने पोस्ट करते हैं, ** कृपया ** टेक्स्ट एडिटर में उन पंक्तियों को हाइलाइट करें और संपादक टूलबार पर "कोड नमूने" बटन ('{}') पर क्लिक करें प्रारूप और वाक्यविन्यास इसे हाइलाइट करें! –