संगठनों में DevOps की शुरूआत ने विकास प्रक्रिया को बदल दिया है और कुछ नई चुनौतियाँ भी पेश की हैं। इसके अलावा, डेवलपर्स और DevOps टीमों के पास उनकी अपनी चुनी हुई प्रोग्रामिंग भाषाओं के साथ-साथ उनके पसंदीदा डेटाबेस सिस्टम भी होते हैं।
उत्पाद का जीवन चक्र हर साल छोटा होता जा रहा है इसलिए डेवलपर्स उन तकनीकों का उपयोग करके तेजी से विकास करने में सक्षम होना चाहते हैं जिन्हें वे सबसे अच्छी तरह से जानते हैं।
कई RDBMS डेटाबेस बैकएंड होने का मतलब है कि आपका संगठन विकास के पक्ष में अधिक चुस्त हो जाएगा, लेकिन यह ऑपरेशन टीमों पर अतिरिक्त ज्ञान भी लगाता है।
अपने बुनियादी ढांचे को एक से कई डेटाबेस तक विस्तारित करने का तात्पर्य है कि आपको उनकी निगरानी, प्रबंधन और स्केल भी करना होगा।
चूंकि हर स्टोरेज बैकएंड अलग-अलग उपयोग के मामलों में उत्कृष्ट होता है, इसका मतलब यह भी है कि आपको उनमें से हर एक के लिए पहिया को फिर से बनाना होगा।
समानताओं और प्रमुख अंतरों को जानने से आपको RDBMS के विभिन्न स्वादों में डूबने में मदद मिलेगी।
इस लेख में हम निम्नलिखित बिंदुओं के बारे में जानेंगे:
- प्लेटफ़ॉर्म का संक्षिप्त परिचय
- ओरेकल, एमएसएसक्यूएल, माईएसक्यूएल, पोस्टग्रेएसक्यूएल
- प्लेटफ़ॉर्म समर्थन
- स्थापना प्रक्रिया
- डेटाबेस पहुंच
- बैकअप प्रक्रिया
- क्वेरी निष्पादन को नियंत्रित करना
- सुरक्षा
- प्रतिकृति विकल्प
- सामुदायिक सहायता
प्लेटफ़ॉर्म का संक्षिप्त परिचय
PostgreSQL दुनिया के सबसे उन्नत ओपन सोर्स डेटाबेस के रूप में पहचाने जाने वाले कई लोगों के लिए है। यह पूरी तरह से ओपन सोर्स डेटाबेस सिस्टम है जो अपने लाइसेंस, पोस्टग्रेएसक्यूएल लाइसेंस के तहत जारी किया गया है, जो एमआईटी या बीएसडी लाइसेंस के बराबर है। PostgreSQL समुदाय सक्रिय है और मौजूदा और नई सुविधाओं में लगातार सुधार कर रहा है। डीबी-इंजन लोकप्रियता रैंक के अनुसार, पोस्टग्रेएसक्यूएल वर्ष 2017 और 2018 का डीबीएमएस था। डीबी-इंजन की लोकप्रियता से पता चलता है कि यह प्रवृत्ति वर्षों में नहीं बदली है।
एक दिलचस्प तथ्य यह है कि PostgreSQL 1994 तक SQL का समर्थन नहीं करता था। QUEL भाषा का उपयोग डेटा को क्वेरी करने के लिए किया जाता था। SQL समर्थन बाद में जोड़ा गया।
PostgreSQL में कई उन्नत सुविधाएँ हैं जो अन्य एंटरप्राइज़ डेटाबेस प्रबंधन सिस्टम प्रदान करती हैं, जैसे कि प्राथमिक कुंजी, विदेशी कुंजी और परमाणु सुविधाओं के अलावा दृश्य, संग्रहीत कार्यविधियाँ, अनुक्रमणिका और ट्रिगर।
PostgreSQL को मौजूदा सुविधाओं को संशोधित करके, नई सुविधाओं को जोड़कर और खुले स्रोत के रूप में स्वतंत्र रूप से वितरित करके उपयोगकर्ताओं द्वारा बढ़ाया जा सकता है। यह UNIX, MacOS, Windows और Linux आदि जैसे प्रमुख प्लेटफार्मों पर चलता है। यह विभिन्न भाषाओं के लिए वीडियो, टेक्स्ट, ऑडियो, इमेज, प्रोग्रामिंग इंटरफेस का समर्थन करता है। समर्थित भाषाओं की सूची में C/C++, Java, Python, Perl आदि शामिल हैं।
ओरेकल आईटी दुनिया में आरडीबीएमएस (रिलेशनल डेटाबेस मैनेजमेंट सिस्टम) के सबसे बड़े विक्रेताओं में से एक है। इसे Oracle डेटाबेस, Oracle DB या Oracle द्वारा विपणन Oracle के रूप में जाना जाता है।
ओरेकल डेटाबेस का उपयोग आईटी उद्योग में कई कंपनियों द्वारा लेनदेन प्रसंस्करण, व्यापार विश्लेषण, व्यापार खुफिया आवेदन उद्देश्य, आदि के लिए किया जा रहा है।
Oracle का एक लंबा और बहुत दिलचस्प इतिहास है:
16 जून 1977 को लैरी एलिसन, बॉब माइनर और एड ओट्स द्वारा सांता क्लारा, कैलिफोर्निया में सॉफ्टवेयर डेवलपमेंट लेबोरेटरीज (एसडीएल) बनाई गई थी। 1977 में Oracle ने अपना नाम CIA प्रोजेक्ट कोडनेम से लिया और पहला व्यवसायीकृत Oracle RDBMS 1979 में दुनिया को दिखाया गया।
Oracle डेटाबेस विभिन्न संस्करणों में उपलब्ध है जैसे एंटरप्राइज़ संस्करण मानक संस्करण, एक्सप्रेस संस्करण और Oracle लाइट। Oracle डेटाबेस के लिए सबसे बड़ा प्रतियोगी Microsoft SQL सर्वर है।
माइक्रोसॉफ्ट एसक्यूएल सर्वर यदि डेटाबेस महत्वपूर्ण आकार का है, या ग्राहकों की एक बड़ी संख्या द्वारा उपयोग किया जाता है, तो प्रतिबंधात्मक लाइसेंसिंग और स्वामित्व की मामूली लागत के साथ एक बहुत लोकप्रिय RDBMS है।
यह Oracle डेटाबेस और IBM के DB2 के साथ बाज़ार में अग्रणी तीन डेटाबेस तकनीकों में से एक है।
यह एक बहुत ही उपयोगकर्ता के अनुकूल इंटरफेस और सीखने में आसान प्रदान करता है, जिसके परिणामस्वरूप एक बड़ा उपयोगकर्ता आधार स्थापित हो गया है।
अन्य आरडीबीएमएस सॉफ्टवेयर की तरह, माइक्रोसॉफ्ट एसक्यूएल सर्वर एसक्यूएल के शीर्ष पर बनाया गया है, एक मानकीकृत प्रोग्रामिंग भाषा जो डेटाबेस प्रशासक (डीबीए) और अन्य आईटी पेशेवर डेटाबेस का प्रबंधन करने और उनके पास मौजूद डेटा को क्वेरी करने के लिए उपयोग करते हैं। SQL सर्वर Transact-SQL (T-SQL) से जुड़ा है, जो Microsoft से SQL का एक कार्यान्वयन है जो मानक भाषा में मालिकाना प्रोग्रामिंग एक्सटेंशन का एक सेट जोड़ता है।
MySQL
MySQL एक Oracle समर्थित ओपन सोर्स रिलेशनल डेटाबेस मैनेजमेंट सिस्टम है जो SQL पर आधारित है।
मूल रूप से स्वीडिश कंपनी MySQL AB द्वारा कल्पना की गई, MySQL को सन माइक्रोसिस्टम्स द्वारा 2008 में और फिर Oracle द्वारा 2010 में Sun को खरीदने पर अधिग्रहण किया गया था।
डेवलपर्स जीएनयू जनरल पब्लिक लाइसेंस (जीपीएल) के तहत MySQL का उपयोग कर सकते हैं। एंटरप्राइज़ संस्करण सुरक्षा और उच्च उपलब्धता के लिए समर्थन और अतिरिक्त सुविधाओं के साथ आता है।
यह डीबी-इंजन रैंकिंग के अनुसार दुनिया का दूसरा सबसे लोकप्रिय डेटाबेस है और संभवत:ग्रह पर सबसे वर्तमान डेटाबेस बैकएंड है क्योंकि यह दुनिया भर में अधिकांश इंटरनेट सेवाओं को चलाता है। MySQL लगभग सभी प्लेटफॉर्म पर चलता है, जिसमें Linux, UNIX और Windows शामिल हैं।
MySQL एक ओपन सोर्स एंटरप्राइज स्टैक का एक महत्वपूर्ण घटक है जिसे LAMP कहा जाता है।
LAMP एक वेब डेवलपमेंट प्लेटफॉर्म है जो ऑपरेटिंग सिस्टम के रूप में Linux, वेब सर्वर के रूप में Apache, रिलेशनल डेटाबेस मैनेजमेंट सिस्टम के रूप में MySQL और ऑब्जेक्ट-ओरिएंटेड स्क्रिप्टिंग लैंग्वेज के रूप में PHP का उपयोग करता है।
प्लेटफ़ॉर्म समर्थन
ओरेकल
Oracle DB का सबसे लोकप्रिय संस्करण, Oracle 12c वास्तव में एक एंटरप्राइज़ RDBMS सिस्टम है जो विभिन्न प्रकार के ऑपरेटिंग सिस्टम और प्लेटफ़ॉर्म पर समर्थित है। ओरेकल डेटाबेस की दुनिया में आंशिक रूप से हावी है क्योंकि यह दर्जनों प्लेटफार्मों पर चलता है, मेनफ्रेम, स्पार्क, मैक से लेकर इंटेल तक सब कुछ। सूची में निम्नलिखित OS और आर्किटेक्चर संयोजन शामिल हैं:x86-64 पर Linux (केवल Red Hat Enterprise Linux, Oracle Linux, और SUSE वितरण समर्थित हैं) Microsoft Windows x86-64 पर। SPARC और x86-64 पर Oracle Solaris। पावर सिस्टम पर आईबीएम एईक्स। IBM zEnterprise Systems पर Linux Itanium पर HP-UX।
एमएसएसक्यूएल
Microsoft उत्पाद होने के कारण, SQL को Windows OS के साथ बहुत अधिक संगत होने के लिए डिज़ाइन किया गया था। 16 नवंबर 2016 को, Microsoft ने एक नई कहानी की शुरुआत की घोषणा की:SQL सर्वर अब Linux और Docker पर समर्थित है। नरक जम गया!
MySQL
MYSQL Microsoft, UNIX, Linux, Mac आदि जैसे सभी प्लेटफॉर्म पर आसान निष्पादन करता है।
पोस्टग्रेएसक्यूएल
सामान्य तौर पर, PostgreSQL से विभिन्न (यहां तक कि विदेशी) CPU आर्किटेक्चर और ऑपरेटिंग सिस्टम पर काम करने की उम्मीद की जा सकती है।
इसमें x86, x86_64, IA64, PowerPC, PowerPC 64, S/390, S/390x, Spark, Spark 64, Alpha, ARM, MIPS, MIPSEL, M68K, और PA-RISC जैसे CPU आर्किटेक्चर शामिल हैं। --disable-spinlocks के साथ कॉन्फ़िगर करके असमर्थित CPU प्रकार पर निर्माण करना अक्सर संभव होता है, लेकिन प्रदर्शन खराब होगा।
PostgreSQL से निम्नलिखित ऑपरेटिंग सिस्टम पर काम करने की उम्मीद की जा सकती है:Linux (सभी हालिया वितरण), विंडोज (Win2000 SP4 और बाद में), FreeBSD, OpenBSD, NetBSD, Mac OS X, AIX, HP/UX, IRIX, Solaris, Tru64 Unix, और यूनिक्सवेयर।
स्थापना प्रक्रिया
ओरेकल
सभी चार प्रस्तुत डेटाबेस सिस्टम से, Oracle के पास सबसे जटिल सिस्टम आवश्यकताएँ हैं जो एक जटिल स्थापना प्रक्रिया के साथ आती हैं। विंडोज और लिनक्स दोनों आधारित प्लेटफॉर्म पर ओरेकल मुख्य इंस्टॉलेशन प्रक्रिया के रूप में एक समर्पित ओरेकल यूनिवर्सल इंस्टालर (ओयूआई) टूल का उपयोग करता है। OUI का उपयोग Oracle डेटाबेस सॉफ़्टवेयर को स्थापित करने के लिए किया जाता है। OUI एक ग्राफिकल यूजर इंटरफेस उपयोगिता है जो आपको निम्न में सक्षम बनाती है:
- अपनी मशीन पर स्थापित Oracle सॉफ़्टवेयर देखें
- नया Oracle डेटाबेस सॉफ़्टवेयर स्थापित करें
- Oracle सॉफ़्टवेयर हटाएं जिसकी अब आवश्यकता नहीं है।
स्थापना प्रक्रिया के दौरान, OUI Oracle डेटाबेस कॉन्फ़िगरेशन सहायक (DBCA) शुरू करेगा जो एक पूर्व-निर्मित डिफ़ॉल्ट डेटाबेस स्थापित कर सकता है जिसमें उदाहरण स्कीमा शामिल हैं या एक अनुकूलित डेटाबेस बनाने और कॉन्फ़िगर करने की प्रक्रिया के माध्यम से आपका मार्गदर्शन कर सकते हैं।
पी> Oracle OUI - इंस्टॉलेशन इंटरफ़ेस
यदि आप स्थापना के दौरान डेटाबेस नहीं बनाते हैं, तो आप एक या अधिक डेटाबेस बनाने के लिए सॉफ़्टवेयर स्थापित करने के बाद DBCA को लागू कर सकते हैं।
एमएसएसक्यूएल
SQL सर्वर 2016 (13.x) से शुरू होकर, SQL सर्वर केवल 64-बिट अनुप्रयोग के रूप में उपलब्ध है।
इंस्टालेशन इंस्टालेशन विजार्ड, कमांड प्रॉम्प्ट या sysprep टूल के जरिए होता है।
स्थापना विज़ार्ड SQL सर्वर स्थापना केंद्र चलाता है। SQL सर्वर की एक नई स्थापना बनाने के लिए, बाईं ओर स्थापना विकल्प का चयन करें, और फिर नया SQL सर्वर स्टैंड-अलोन स्थापना पर क्लिक करें या किसी मौजूदा स्थापना में सुविधाएँ जोड़ें।
Linux आधारित संस्थापन बहुत हद तक ओपन सोर्स डेटाबेस संस्थापन विधि के समान है। यह डेबियन और रेडहैट आधारित प्रणालियों के लिए पैकेजिंग का समर्थन करता है। चरणों में रिपोजिटरी कॉन्फ़िगरेशन, पैकेज इंस्टॉलेशन और पोस्ट-इंस्टॉलेशन कॉन्फ़िगरेशन शामिल है, जो MySQL के समान है। निम्नलिखित लेख में पूरी प्रक्रिया का बहुत वर्णन किया गया है।
MSSQL इंस्टालेशन विजार्ड
MySQL
Oracle MySQL के बाइनरी वितरण का एक सेट प्रदान करता है। इनमें कई प्लेटफ़ॉर्म के लिए संपीड़ित टार फ़ाइलों (.tar.gz एक्सटेंशन वाली फ़ाइलें) के रूप में जेनेरिक बाइनरी वितरण और प्लेटफ़ॉर्म-विशिष्ट पैकेजों में बायनेरिज़ शामिल हैं। विंडोज प्लेटफॉर्म पर, इंस्टॉलेशन प्रक्रिया GUI के माध्यम से मानक इंस्टॉलेशन विज़ार्ड द्वारा ट्रिगर की जाती है।
पोस्टग्रेएसक्यूएल
PostgreSQL अधिकांश लिनक्स वितरणों में उपलब्ध है, इसलिए इसकी बहुत संभावना है कि आप इसे एक साधारण यम या apt-get कमांड के माध्यम से स्थापित कर सकते हैं। HA कॉन्फ़िगरेशन के लिए, आप ClusterControl s9s टूल या GUI का उपयोग कर सकते हैं। S9S टूल आपको केवल एक सिंगल लाइन कमांड के साथ PostgreSQL क्लस्टर बनाने में मदद कर सकते हैं:
$ s9s cluster \
--create \
--cluster-type=postgresql \
--nodes="192.168.0.91?master;192.168.0.92?slave;192.168.0.93?slave" \
--provider-version='11' \
--db-admin='postgres' \
--db-admin-passwd='s3cr3tP455' \
--os-user=root \
--os-key-file=/root/.ssh/id_rsa \
--cluster-name='PostgreSQL 11 Streaming Replication' \
--wait
Creating PostgreSQL Cluster
\ Job 259 RUNNING [█▋ ] 15% Installing helper packages
अधिक जानकारी के लिए, इस ब्लॉग को देखें।
डेटाबेस तक पहुंच और DB निर्माण
ओरेकल
Oracle बाइनरी और डेटाबेस निर्माण की प्रक्रिया को अलग करता है। अन्य लोकप्रिय डेटाबेस सिस्टम के विपरीत, डेटाबेस निर्माण में बहुत अधिक चरण शामिल होते हैं।
डेटाबेस कॉन्फ़िगरेशन सहायक (DBCA) डेटाबेस बनाने का पसंदीदा तरीका है क्योंकि यह इसे बहुत अधिक स्वचालित दृष्टिकोण से कर सकता है। DBCA को Oracle यूनिवर्सल इंस्टालर (OUI) द्वारा लॉन्च किया जा सकता है, जो आपके द्वारा चुने गए इंस्टॉलेशन के प्रकार पर निर्भर करता है। आप Oracle डेटाबेस इंस्टालेशन के बाद किसी भी समय DBCA को एक स्टैंडअलोन टूल के रूप में लॉन्च कर सकते हैं।
आप DBCA को इंटरेक्टिव मोड या नॉन-इंटरैक्टिव/साइलेंट मोड में चला सकते हैं। इंटरएक्टिव मोड एक डेटाबेस बनाने और कॉन्फ़िगर करने के लिए एक ग्राफिकल इंटरफ़ेस और निर्देशित वर्कफ़्लो प्रदान करता है। गैर-संवादात्मक/मौन मोड आपको डेटाबेस निर्माण को स्क्रिप्ट करने में सक्षम बनाता है। आप कमांड-लाइन तर्क, एक प्रतिक्रिया फ़ाइल या दोनों निर्दिष्ट करके DBCA को गैर-संवादात्मक/मौन मोड में चला सकते हैं।
Oracle DBCA - डेटाबेस निर्माणजब एक डेटाबेस बनाया जाता है तो आप इसे एक समर्पित क्लाइंट के साथ एक्सेस कर सकते हैं जिसे sqlplus कहा जाता है। SQL*Plus एक टर्मिनल क्लाइंट प्रोग्राम है जिसके साथ आप Oracle डेटाबेस एक्सेस कर सकते हैं।
एमएसएसक्यूएल
SQL सर्वर प्रबंधन स्टूडियो (SSMS) डेटाबेस इंजन को प्रशासित करने और Transact-SQL कोड लिखने का मुख्य उपकरण है। एसएसएमएस माइक्रोसॉफ्ट डाउनलोड सेंटर से मुफ्त डाउनलोड के रूप में उपलब्ध है। नवीनतम संस्करण का उपयोग डेटाबेस इंजन के पुराने संस्करणों के साथ किया जा सकता है।
नया डेटाबेस बनाने के लिए प्रबंधन स्टूडियो एक पसंदीदा तरीका है। Microsoft SQL सर्वर में एक डेटाबेस बनाने के लिए, उस कंप्यूटर से कनेक्ट करें जहाँ Microsoft SQL सर्वर एक व्यवस्थापक खाते का उपयोग करके स्थापित किया गया है।
Microsoft SQL सर्वर प्रबंधन स्टूडियो प्रारंभ करें और एक डेटाबेस विकल्प बनाना चुनें। विज़ार्ड प्रक्रिया आपको प्रक्रिया के माध्यम से चलेगी। यदि आप कमांड लाइन पसंद करते हैं तो यह CREATE DATABASE सिंटैक्स के साथ किया जा सकता है।
MySQL
अपने MySQL डेटाबेस तक पहुँचने के लिए mysql क्लाइंट का उपयोग करें। डेटाबेस बनाना उतना ही सरल है जितना कि CREATE DATABASE
पोस्टग्रेएसक्यूएल
PostgreSQL डेटाबेस में कई 'स्कीमा' का विकल्प होता है जो MySQL में डेटाबेस के समान काम करते हैं।
स्कीमा में टेबल, इंडेक्स आदि होते हैं, और उन्हें उसी डेटाबेस से उसी कनेक्शन द्वारा एक साथ एक्सेस किया जा सकता है जो उन्हें रखता है। PostgreSQL के लिए एक्सेस विधियों को एक फ़ाइल में परिभाषित किया गया है:pg_hba.conf। यह विभिन्न स्थानों पर स्थित हो सकता है। Ubuntu 14.04 पर यह /etc/postgresql/9.3/main/pg_hba.conf में स्थित है, दूसरी ओर Centos 7 पर यह डिफ़ॉल्ट रूप से /var/lib/pgsql/data/pg_hba.conf में स्थित है।
बैकअप प्रक्रिया
ओरेकल
Oracle के पास यहाँ वर्णित सभी चार सर्वरों का सबसे जटिल, समर्पित बिल्ट-इन बैकअप टूल है; इसे रिकवरी मैनेजर (RMAN) कहा जाता है।
RMAN आपको परिष्कृत बैकअप नीतियां और चयनात्मक पुनर्स्थापना चलाने की अनुमति देता है। समान संचालन के लिए आमतौर पर अन्य RDBMS में बहुत सारे मैन्युअल चरणों की आवश्यकता होती है।
हम दो तरह से बैकअप ले सकते हैं:
- डेटाबेस को अक्षम करना और भौतिक फ़ाइलों की प्रतिलिपि बनाना (तथाकथित कोल्ड बैकअप)
- RMAN का उपयोग करना और डेटाबेस को अक्षम किए बिना बैकअप बनाना (हॉट बैकअप)
हॉट बैकअप बनाने के लिए, आधार को ARCHIVELOG मोड में सेट करें। यह Oracle को फिर से लॉग फ़ाइलों की प्रतिलिपि को एक संग्रह के रूप में नहीं रखने के लिए कहेगा।
एमएसएसक्यूएल
MS SQL दुनिया में, आप डेटाबेस को बैकअप और पुनर्स्थापित करने के लिए अंतर्निहित T-SQL कमांड का उपयोग कर सकते हैं। Mysqlhotcopy और mysqldump जैसे टूल का उपयोग करने की कोई आवश्यकता नहीं है।
MS SQL सर्वर तीन अलग-अलग ऑनलाइन बैकअप रणनीतियाँ प्रदान करता है:
- सरल पुनर्प्राप्ति मॉडल (ALTER DATABASE dbname SET RECOVERY SIMPLE)
- पूर्ण पुनर्प्राप्ति मॉडल (ALTER DATABASE dbname SET पुनर्प्राप्ति पूर्ण)
- बल्क-लॉग्ड रिकवरी मॉडल (ALTER DATABASE dbname SET RECOVERY BULK_LOGGED)
यदि कोई डेटा हानि स्वीकार्य नहीं है, तो अनुशंसित मॉडल पूर्ण पुनर्प्राप्ति है। बाइनरी लॉग सक्षम होने पर यह मोड MySQL सुविधा के समान है। आप किसी भी समय डेटाबेस को पुनर्प्राप्त कर सकते हैं, लेकिन आपको नियमित रूप से लेनदेन लॉग के साथ-साथ डेटाबेस का बैकअप लेना चाहिए।
बल्क-लॉग मॉडल का उपयोग बड़े बल्क ऑपरेशन जैसे डेटा आयात करने या बड़ी टेबल पर इंडेक्स बनाने के लिए किया जा सकता है। डेटाबेस चलाने के लिए यह कम सामान्य तरीका है, विशेष रूप से उत्पादन। यह समय-समय पर पुनर्प्राप्ति का समर्थन नहीं करता है इसलिए इसे आमतौर पर अस्थायी समाधान के रूप में उपयोग किया जाता है।
सरल मॉडल तब उपयोगी होता है जब डेटाबेस को शायद ही कभी अद्यतन किया जाता है या परीक्षण और विकास उद्देश्यों के लिए किया जाता है। SIMPLE मोड में, लेन-देन पूरा होने के बाद हर बार डेटाबेस का लेन-देन लॉग कट जाता है। अन्य मोड में, लॉग को CHECKPOINT स्टेटमेंट के माध्यम से या ट्रांजेक्शन बैकअप फ़ाइल के बाद छोटा किया जाता है। यदि डेटाबेस क्षतिग्रस्त हो जाता है, तो केवल नवीनतम बैकअप पुनर्प्राप्त किया जा सकता है और इस बैकअप के बाद से सभी परिवर्तन खो जाते हैं।
MySQL
MySQL और MariaDB के लिए दो सबसे लोकप्रिय बैकअप उपयोगिताएँ उपलब्ध हैं, अर्थात् mysqldump तार्किक बैकअप और बाइनरी बैकअप Percona XtraBackup और MariaBackup (Percona XtraBackup का एक कांटा)। MySQL एंटरप्राइज़ संस्करण भी mysqlbackup प्रदान करता है जो XtraBackup और MariaBackup हॉट बैकअप टूल के समान है।
पोस्टग्रेएसक्यूएल
अधिकांश DBMS कुछ बिल्ट-इन बैकअप टूल प्रदान करते हैं। PostgreSQL में बॉक्स से बाहर pg_dump और pg_dumpall है। हालाँकि, आप अपने उत्पादन डेटाबेस के लिए कुछ अन्य उपकरणों का उपयोग करना चाह सकते हैं। PostgreSQL आलेख के लिए शीर्ष बैकअप टूल में अधिक जानकारी मिल सकती है।
क्वेरी निष्पादन और समवर्ती समर्थन को नियंत्रित करना
ओरेकल
Oracle में, सभी डेटाबेस ऑब्जेक्ट को स्कीमा द्वारा समूहीकृत किया जाता है। स्कीमा डेटाबेस ऑब्जेक्ट्स का संग्रह है और सभी डेटाबेस ऑब्जेक्ट सभी स्कीमा और उपयोगकर्ताओं के बीच साझा किए जाते हैं। इसका अनुवाद MySQL डेटाबेस में किया जा सकता है। भले ही यह सब साझा किया गया हो, प्रत्येक उपयोगकर्ता को भूमिकाओं और अनुमतियों के माध्यम से कुछ स्कीमा और तालिकाओं तक सीमित किया जा सकता है। यह अवधारणा काफी हद तक MySQL डेटाबेस के समान है। नमस्ते
एमएसएसक्यूएल
MS SQL सर्वर सभी ऑब्जेक्ट्स, जैसे टेबल, व्यू और प्रक्रियाओं को डेटाबेस नामों से व्यवस्थित करता है। उपयोगकर्ताओं को एक लॉग इन के लिए असाइन किया जाता है, जिसे विशिष्ट डेटाबेस और उसकी वस्तुओं तक पहुंच प्रदान की जाती है। साथ ही, SQL सर्वर में प्रत्येक डेटाबेस में सर्वर पर एक निजी, साझा नहीं की गई डिस्क फ़ाइल होती है।
MySQL
MySQL में केवल InnoDB में MVCC सपोर्ट है। यह एक स्टोरेज इंजन है और डिफ़ॉल्ट रूप से MySQL में उपलब्ध है। यह एसीआईडी-शिकायत सुविधाएँ भी प्रदान करता है जैसे विदेशी कुंजी समर्थन और लेनदेन प्रबंधन। डिफ़ॉल्ट रूप से, प्रत्येक क्वेरी को एक अलग लेनदेन के रूप में माना जाता है, जो कि Oracle DB की तुलना में एक अलग दृष्टिकोण है।
पोस्टग्रेएसक्यूएल
Postgres इंजन MVCC (मल्टीवर्सन कंसुरेंसी कंट्रोल) नामक एक विधि का उपयोग करके समवर्ती नियंत्रण करता है। डेटाबेस से जुड़े प्रत्येक उपयोगकर्ता के लिए, Postgres डेटाबेस किसी विशेष उदाहरण पर डेटाबेस का एक स्नैपशॉट देता है। जब डेटाबेस को किसी आइटम को अपडेट करना होगा, तो यह नया संस्करण जोड़ देगा और पुराने संस्करण को अप्रचलित के रूप में इंगित करेगा। यह डेटाबेस को ओवरहेड बचाने की अनुमति देता है लेकिन पुराने, पुराने डेटा को हटाने के लिए एक विनियमित स्वीप की आवश्यकता होती है।
सुरक्षा
ओरेकल
सुरक्षा विशेषताएं बहुत अच्छी हैं, सिस्टम जोखिमों का मूल्यांकन करने, अनधिकृत डेटा प्रकटीकरण को रोकने, डेटाबेस गतिविधियों का पता लगाने और रिपोर्ट करने और डेटा एक्सेस नियंत्रण लागू करने के लिए नियंत्रण सहित बहु-स्तरित सुरक्षा प्रदान करता है।
एमएसएसक्यूएल
सुरक्षा सुविधाएँ मामूली हैं, RDBMS Oracle की तुलना में कम सुविधाएँ प्रदान करता है लेकिन फिर भी ओपन सोर्स डेटाबेस सिस्टम की तुलना में बहुत अधिक है।
MySQL
MySQL उन सभी कनेक्शनों, प्रश्नों और अन्य कार्यों के लिए एक्सेस कंट्रोल लिस्ट (ACL) के आधार पर सुरक्षा लागू करता है, जिन्हें उपयोगकर्ता निष्पादित करने का प्रयास कर सकता है। MySQL क्लाइंट और सर्वर के बीच SSL-एन्क्रिप्टेड कनेक्शन के लिए भी कुछ समर्थन है।
पोस्टग्रेएसक्यूएल
PostgreSQL में अनुमतियाँ सेट करने और बनाए रखने के लिए ROLES और विरासत में मिली भूमिकाएँ हैं। क्लाइंट/सर्वर संचार को एन्क्रिप्ट करने के लिए पोस्टग्रेएसक्यूएल में कनेक्शन के लिए मूल एसएसएल समर्थन है। इसमें रो लेवल सिक्योरिटी भी है।
इसके अलावा, PostgreSQL SE-PostgreSQL नामक एक बिल्ट-इन एन्हांसमेंट के साथ आता है जो SELinux सुरक्षा नीति के आधार पर अतिरिक्त एक्सेस कंट्रोल प्रदान करता है। अधिक विवरण यहाँ।
सामुदायिक सहायता
ओरेकल
Oracle डेटाबेस, MySQL के समान, में एक बड़ा समुदाय है, जो ज्यादातर https://community.oracle.com के आसपास संगठित है और दुनिया भर के किसी भी स्थान पर भावुक समूह जैसे कि https://poug.org/en/। सशुल्क समर्थन आपको उस सहायता समूह तक पहुंच प्रदान करता है जिसे पहले मेटलिंक के रूप में जाना जाता था, न कि support.oracle.com।
एमएसएसक्यूएल
अन्य डेटाबेस सिस्टम की तुलना में, MSSQL में शायद सबसे कम संगठित समुदाय समूह हैं लेकिन फिर भी बहुत सक्रिय हैं। Microsoft विश्वविद्यालयों में अपने उत्पादों को बढ़ावा देने के लिए बहुत अच्छा काम करता है। यह युवा डेवलपर्स, डिवोप्स और डीबीए को प्रौद्योगिकी (मुफ्त लाइसेंस) और किसी भी आवश्यक सामग्री तक आसान पहुंच प्रदान करता है।
MySQL
MySQL में योगदानकर्ताओं का एक बड़ा समुदाय है, जो विशेष रूप से Oracle द्वारा अधिग्रहण के बाद, मुख्य रूप से कभी-कभी उभरने वाली कुछ नई सुविधाओं के साथ मौजूदा सुविधाओं को बनाए रखने पर ध्यान केंद्रित करता है। अन्य ओपन सोर्स डेटाबेस पर लाभ एक बहुत मजबूत बाहरी विक्रेता इको-सिस्टम है। मारियाडीबी और पेरकोना जैसी कंपनियां न केवल महान समर्थन प्रदान करती हैं बल्कि अपने ओपन सोर्स संस्करणों में उद्यम सुविधाओं को जोड़कर योगदान भी देती हैं।
पोस्टग्रेएसक्यूएल
PostgreSQL का एक बहुत मजबूत और सक्रिय समुदाय है। इसका समुदाय मौजूदा सुविधाओं में सुधार करता है, जबकि इसके अभिनव प्रतिबद्ध यह सुनिश्चित करने का प्रयास करते हैं कि यह ओरेकल और एमएसएसक्यूएल डेटाबेस के बीच की दूरी को सीमित करते हुए नई सुविधाओं और सुरक्षा के साथ सबसे उन्नत डेटाबेस बना रहे। PostgreSQL बाजार में अन्य RDBMS की तुलना में अधिक सुविधाओं के लिए जाना जाता है।
प्रतिकृति विकल्प
ओरेकल
Oracle एक अंतर्निहित Oracle डेटा गार्ड के माध्यम से तार्किक और भौतिक प्रतिकृति प्रदान करता है। यह एक उद्यम सुविधा है।
डेटा गार्ड एक शिप रेडो / अप्लाई रेडो तकनीक है, "फिर से करें" लेनदेन को पुनर्प्राप्त करने के लिए आवश्यक जानकारी है।
एक उत्पादन डेटाबेस को प्राथमिक डेटाबेस के रूप में संदर्भित किया जाता है जो स्टैंडबाय डेटाबेस के रूप में संदर्भित एक या अधिक प्रतिकृतियों को फिर से प्रसारित करता है। जब किसी तालिका में कोई सम्मिलित या अद्यतन किया जाता है, तो यह परिवर्तन लॉग लेखक द्वारा संग्रह लॉग में कैप्चर किया जाता है, और स्टैंडबाय सिस्टम में दोहराया जाता है।
स्टैंडबाय डेटाबेस प्राथमिक डेटाबेस के साथ सिंक्रनाइज़ेशन बनाए रखने के लिए पुनर्प्राप्ति, सत्यापन और पुन:लागू करने के निरंतर चरण में हैं। एक स्टैंडबाय डेटाबेस भी स्वचालित रूप से फिर से सिंक्रनाइज़ हो जाएगा यदि यह अस्थायी रूप से बिजली की कमी, नेटवर्क समस्याओं आदि के कारण प्राथमिक डेटाबेस से डिस्कनेक्ट हो जाता है।
मल्टीसोर्स, चयनात्मक प्रतिकृति जैसे अधिक लचीले प्रतिकृति विकल्पों के लिए आपको एक अतिरिक्त भुगतान उपकरण, ओरेकल गोल्डन गेट पर विचार करना चाहिए।
एमएसएसक्यूएल
Microsoft SQL सर्वर वितरित अनुप्रयोगों में उपयोग के लिए निम्न प्रकार की प्रतिकृति प्रदान करता है:
- लेन-देन संबंधी प्रतिकृति
- प्रतिकृति मर्ज करें
- स्नैपशॉट प्रतिकृति
इसे माइक्रोसॉफ्ट इंटीग्रेशन सर्विसेज के साथ बहुत बढ़ाया जा सकता है, जिससे आपको बॉक्स से बाहर प्रतिकृति प्रवाह को अनुकूलित करने का विकल्प मिलता है।
पोस्टग्रेएसक्यूएल
PostgreSQL के पास कई विकल्प उपलब्ध हैं, जिनमें से प्रत्येक के अपने फायदे और नुकसान हैं, यह इस बात पर निर्भर करता है कि प्रतिकृति के माध्यम से क्या आवश्यक है। बिल्ड विकल्प राइट अहेड लॉग पर आधारित हैं। फ़ाइलों को एक स्टैंडबाय सर्वर पर भेज दिया जाता है जहां उन्हें पढ़ा और फिर से चलाया जाता है, या स्ट्रीमिंग प्रतिकृति, जहां केवल-पढ़ने के लिए स्टैंडबाय सर्वर उन्हें फिर से चलाने के लिए डेटाबेस कनेक्शन पर लेनदेन लॉग प्राप्त करता है। अधिक परिष्कृत प्रतिकृति वास्तुकला के मामले में, आप शायद स्लोनी (एकाधिक दास के लिए मास्टर) या बुकार्डो (मल्टीमास्टर) की जांच करना चाहेंगे।
MySQL
MySQL प्रतिकृति संभवतः MySQL के लिए सबसे लोकप्रिय उच्च उपलब्धता समाधान है,
और व्यापक रूप से शीर्ष वेब सेवाओं द्वारा उपयोग किया जाता है।
इसे स्थापित करना आसान है लेकिन चल रहे रखरखाव जैसे सॉफ़्टवेयर अपग्रेड, स्कीमा परिवर्तन, टोपोलॉजी परिवर्तन, फ़ेलओवर और पुनर्प्राप्ति हमेशा मुश्किल रहे हैं।
MySQL प्रतिकृति को किसी तीसरे पक्ष के उपकरण की आवश्यकता नहीं है, मास्टर-स्लेव और मल्टीमास्टर दोनों को बॉक्स से बाहर किया जा सकता है।
MySQL के हाल के संस्करणों ने बहु स्रोत प्रतिकृति और वैश्विक लेनदेन आईडी को जोड़ा है जो इसे और भी अधिक विश्वसनीय और बनाए रखने में आसान बनाता है।
निष्कर्ष
Oracle और MSSQL जैसे प्राथमिकता डेटाबेस मजबूत प्रबंधन प्रणाली और बढ़िया समर्थन प्रदान करते हैं। समर्थित सुविधाओं की लंबी सूची के बीच, उपयोगकर्ता उद्यम समर्थन और सशुल्क ज्ञान प्रणालियों तक पहुंच की आश्वस्त भावना प्राप्त कर सकते हैं।
दूसरी तरफ, लाइसेंस की लागत, फीचर गैप और एंटरप्राइज प्लगइन्स की इतनी बड़ी नहीं, आपको ओपन सोर्स निर्णय को पहले से कहीं ज्यादा आसान बनाने के लिए उत्सुक बना देगी।
पूर्वनिर्धारित प्रक्रियाओं और स्वचालन का उपयोग न केवल आपका समय बचा सकता है बल्कि आपको सामान्य गलतियों से भी बचा सकता है।
एक प्रबंधन प्लेटफ़ॉर्म जो डेटाबेस जीवनचक्र के सभी विभिन्न पहलुओं को व्यवस्थित रूप से संबोधित करता है, कई बिंदु समाधानों को एक साथ जोड़ने से अधिक मजबूत होगा।