यदि आपको कभी यह जानने की आवश्यकता हो कि आपकी डेटाबेस फ़ाइलें कहाँ स्थित हैं, तो निम्न T-SQL कोड चलाएँ:
USE master; SELECT name 'Logical Name', physical_name 'File Location' FROM sys.master_files;
यह SQL सर्वर इंस्टेंस के लिए सभी डेटा फ़ाइलों और लॉग फ़ाइलों की सूची लौटाएगा।
जब मैं मैक पर SQL ऑपरेशंस मैनेजमेंट स्टूडियो में उस कोड को चलाता हूं तो यह कैसा दिखता है:
यदि आप Windows का उपयोग करते हैं, तो आपका पथ Windows पथ की तरह दिखाई देगा. कुछ इस तरह:
C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\Music.mdf
हालांकि, यदि आपने अपना स्थान निर्दिष्ट किया है, तो यह आसानी से इस तरह दिख सकता है:
D:\data\Music.mdf
ये फ़ाइलें क्या हैं?
जब आप SQL सर्वर में डेटाबेस बनाते हैं, तो डेटा फ़ाइलें और लेन-देन लॉग फ़ाइलें स्वचालित रूप से बनाई जाती हैं।
- डेटा फ़ाइलें डेटा और ऑब्जेक्ट जैसे टेबल, इंडेक्स, संग्रहीत कार्यविधियाँ और दृश्य रखती हैं।
- लेनदेन लॉग फाइलें सभी लेनदेन और प्रत्येक लेनदेन द्वारा किए गए डेटाबेस संशोधनों को रिकॉर्ड करती हैं। लेन-देन लॉग फ़ाइलों में वह जानकारी होती है जो डेटाबेस में सभी लेन-देन को पुनर्प्राप्त करने के लिए आवश्यक होती है।
यदि आप इन फ़ाइलों के लिए कोई स्थान और नाम स्पष्ट रूप से निर्दिष्ट नहीं करते हैं, तो SQL सर्वर उन्हें डिफ़ॉल्ट स्थान पर रखेगा (सर्वर स्तर पर डिफ़ॉल्ट स्थान निर्दिष्ट है)। SQL सर्वर में डेटा फ़ाइलों और लॉग फ़ाइलों के लिए डिफ़ॉल्ट स्थान खोजने का तरीका यहां दिया गया है।
किसी विशिष्ट डेटाबेस के लिए फ़ाइलें ढूंढें
यदि आपको केवल किसी विशेष डेटाबेस के लिए फ़ाइलों का स्थान खोजने की आवश्यकता है, तो आप sys.database_files
को क्वेरी कर सकते हैं इसके बजाय सिस्टम कैटलॉग दृश्य। बस लागू डेटाबेस पर स्विच करें और क्वेरी चलाएँ।
यहां एक उदाहरण दिया गया है:
USE Solutions; SELECT name 'Logical Name', physical_name 'File Location' FROM sys.database_files;
यह Solutions
. के लिए केवल डेटा और लॉग फाइल लौटाएगा डेटाबेस।