SQL सर्वर डेटाबेस का बैकअप बनाने का एक आसान तरीका प्रदान करता है। बैकअप ट्रांजैक्ट-एसक्यूएल, पावरशेल, या एसक्यूएल सर्वर मैनेजमेंट स्टूडियो जीयूआई के माध्यम से किया जा सकता है।
यहाँ, मैं प्रदर्शित करूँगा कि SQL सर्वर प्रबंधन प्रणाली GUI का उपयोग करके बैकअप कैसे बनाया जाए, फिर Transact-SQL का उपयोग करके, फिर अंत में, SQL Server Powershell के साथ।
GUI के माध्यम से बैकअप बनाएं
-
बैक अप डेटाबेस लॉन्च करें डायलॉग बॉक्स
ऑब्जेक्ट एक्सप्लोरर में, उस डेटाबेस पर राइट-क्लिक करें जिसका आप बैकअप लेना चाहते हैं, और कार्य> बैक अप... चुनें। प्रासंगिक मेनू से।
-
बैकअप सेटिंग की समीक्षा करें
यदि आवश्यक हो तो यह डायलॉग बॉक्स आपको किसी भी सेटिंग को बदलने का अवसर देता है।
हमारे उदाहरण के लिए, इसे डिफ़ॉल्ट सेटिंग्स पर छोड़ दें और ठीक . पर क्लिक करें बैकअप बनाने के लिए।
यदि आपने पिछले चरण में गलती से गलत डेटाबेस का चयन कर लिया है तो आप यहां डेटाबेस बदल सकते हैं।
-
बैकअप पूर्ण
बैकअप पूर्ण होने पर आपको एक संदेश प्राप्त होगा।
क्लिक करें ठीक संदेश और संवाद बॉक्स बंद करने के लिए।
बैकअप फ़ाइल अब निर्दिष्ट स्थान पर स्थित होगी।
Transact-SQL का उपयोग करके डेटाबेस का बैकअप लें
-
आप ऊपर जैसा बैकअप SQL का उपयोग करके कर सकते हैं।
ऐसा करने के लिए, एक नई क्वेरी विंडो खोलें और
BACKUP
निष्पादित करें बयान।BACKUP
स्टेटमेंट विभिन्न विकल्पों को स्वीकार करता है (जीयूआई विकल्प की तरह), लेकिन आप न्यूनतम कोड के साथ एक साधारण बैकअप भी चला सकते हैं।नमूना कोड
नीचे एक साधारण बैकअप स्क्रिप्ट का एक उदाहरण दिया गया है जो डेटाबेस को बैकअप के लिए और उसके बैकअप के लिए स्थान निर्दिष्ट करती है।
इस कोड को चलाने के बाद, बैकअप फ़ाइल निर्दिष्ट स्थान पर स्थित होगी।
BACKUP DATABASE Music TO DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Backup\Music.bak';
आप
BACKUP
. के लिए पूरा सिंटैक्स देख सकते हैं माइक्रोसॉफ्ट वेबसाइट पर बयान।
पावरशेल का उपयोग करके डेटाबेस का बैकअप लें
SQL सर्वर 2016 Windows PowerShell का समर्थन करता है, जो एक स्क्रिप्टिंग शेल है, जिसका उपयोग आमतौर पर प्रशासन और परिनियोजन कार्यों को स्वचालित करने के लिए किया जाता है।
पावरशेल भाषा ट्रांजैक्ट-एसक्यूएल स्क्रिप्ट की तुलना में अधिक जटिल तर्क का समर्थन करती है, जो आपको अपने बैकअप और अन्य कार्यों के लिए अधिक परिष्कृत स्क्रिप्ट बनाने की क्षमता देती है।
-
पावरशेल खोलें
डेटाबेस पर राइट-क्लिक करें और Start Powershell . चुनें ।
-
बैकअप कमांड चलाएँ
बैकअप बनाने के लिए कमांड दर्ज करें और Enter . दबाएं (या वापसी , आपके कीबोर्ड पर निर्भर करता है)।
बैकअप तुरंत चलेगा।
नमूना कोड
निम्न कोड पिछले उदाहरणों की तरह ही एक बैकअप बनाएगा। बस
MyServer
replace को बदलें आपके सर्वर के नाम के साथ।इस कोड को चलाने के बाद, बैकअप फ़ाइल डिफ़ॉल्ट स्थान पर स्थित हो जाएगी।
Backup-SqlDatabase -ServerInstance MyServer -Database Music
आप एक स्थान भी निर्दिष्ट कर सकते हैं
Backup-SqlDatabase -ServerInstance MyServer -Database Music -BackupFile 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Backup\Music.bak'
आप
-BackupAction Database
. भी निर्दिष्ट कर सकते हैं स्पष्ट रूप से यह बताने के लिए कि यह एक पूर्ण बैकअप है। हालांकि, यह डिफ़ॉल्ट विकल्प है।आप
Backup-SqlDatabase
. के लिए पूरा दस्तावेज़ देख सकते हैं माइक्रोसॉफ्ट वेबसाइट पर कमांड।
बैकअप फ़ाइलों को अधिलेखित करना
यदि आपने उपरोक्त सभी उदाहरणों को ठीक वैसे ही चलाया जैसे वे हैं, तो आपने देखा होगा कि हर बार जब आप इसे चलाते हैं, तो बैकअप फ़ाइल का फ़ाइल आकार बढ़ जाता है।
ऐसा इसलिए है क्योंकि प्रत्येक क्रमिक बैकअप स्वयं को मौजूदा फ़ाइल में जोड़ रहा है।
यह ऐसा इसलिए कर रहा है क्योंकि हम एक ही फ़ाइल नाम का उपयोग कर रहे हैं, और हमने स्पष्ट रूप से यह निर्दिष्ट नहीं किया है कि प्रत्येक बैकअप को किसी भी मौजूदा फ़ाइल को अधिलेखित कर देना चाहिए।
एक विकल्प है जो आपको मौजूदा फ़ाइल को अधिलेखित करने की अनुमति देता है।
- जीयूआई का उपयोग करना , मीडिया विकल्प . पर क्लिक करें डेटाबेस का बैकअप लें . के बाएँ मेनू में संवाद बॉक्स में, और सभी मौजूदा बैकअप सेटों को अधिलेखित करें . चुनें मीडिया को अधिलेखित करें . में अनुभाग।
- एसक्यूएल का उपयोग करना
WITH INIT
जोड़ें SQL कथन के लिए। - पावरशेल का उपयोग करना , जोड़ें
-Initialize
आदेश के लिए।
बैकअप फ़ाइलें सहेजना
हालांकि, एक अद्वितीय फ़ाइल नाम (आमतौर पर फ़ाइल नाम में दिनांक सहित) के साथ पूर्ण बैकअप बनाना अक्सर एक अच्छा विचार है। एक अद्वितीय फ़ाइल नाम होने का अर्थ होगा कि प्रत्येक बैकअप एक अलग फ़ाइल होगी।
इसके अलावा, आपके डेटाबेस के आकार के आधार पर, और इसमें कितना नया डेटा दर्ज किया जा रहा है, आप अपने पूर्ण बैकअप को डिफरेंशियल बैकअप के साथ पूरक करना चाह सकते हैं। एक डिफरेंशियल बैकअप केवल उस डेटा को कैप्चर करता है जो सबसे हाल के पूर्ण बैकअप के बाद से बदल गया है।