Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

AWS RDS, भाग 2 पर MySQL को PostgreSQL में माइग्रेट करना

MySQL डेटाबेस और PostgreSQL डेटाबेस शीर्ष दो ओपन सोर्स रिलेशनल डेटाबेस मैनेजमेंट सिस्टम (RDBMS) हैं, जिनमें से प्रत्येक कुछ अद्वितीय लाभ प्रदान करता है। पिछले लेख में, "AWS RDS, भाग 1 पर MySQL को PostgreSQL में माइग्रेट करना," हमने MySQL पर PostgreSQL के कुछ लाभों पर चर्चा की और MySQL से PostgreSQL में माइग्रेशन करने के लिए AWS डेटाबेस माइग्रेशन सर्विस (DMS) की शुरुआत की। हमने DMS के लिए AWS IAM उपयोगकर्ता बनाकर शुरुआत की। इस निरंतरता ट्यूटोरियल में, हम RDS पर MySQL और PostgreSQL डेटाबेस के उदाहरण बनाएंगे, और प्रत्येक से जुड़ेंगे। इस ट्यूटोरियल में निम्नलिखित भाग हैं:

  • MySQL डेटाबेस और PostgreSQL डेटाबेस के लिए AWS RDS इंस्टेंस बनाना
  • डेटाबेस और डीएमएस के बीच कनेक्टिविटी को कॉन्फ़िगर करना
  • MySQL डेटाबेस से कनेक्ट करना
  • एक PostgreSQL डेटाबेस से कनेक्ट करना
  • निष्कर्ष

MySQL डेटाबेस और PostgreSQL डेटाबेस के लिए AWS RDS इंस्टेंस बनाना

AWS RDS पर क्रमशः स्रोत और लक्ष्य डेटाबेस, MySQL डेटाबेस और PostgreSQL डेटाबेस बनाएँ। RDS के उपयोग पर पहले के ट्यूटोरियल में चर्चा की गई है। स्रोत डेटाबेस, MySQL डेटाबेस के लिए, MySQL का चयन करें, जैसा कि चित्र 1 में दिखाया गया है।


चित्र 1: RDS में MySQL का चयन करना

उत्पादन या देव/परीक्षण . चुनें परिनियोजन विकल्प, जैसा कि चित्र 2 में दिखाया गया है। अगला चरण क्लिक करें।


चित्र 2: परिनियोजन प्रकार चुनना

DB विवरण निर्दिष्ट करें , जिनमें से अधिकांश में उपयुक्त डिफ़ॉल्ट सेटिंग्स हैं। डीबी इंस्टेंस क्लास (db.t2.micro या db.t1.micro) का चयन करें। एक DB इंस्टेंस आइडेंटिफ़ायर (MYSQLDB) निर्दिष्ट करें, जो एक MySQL डेटाबेस आरक्षित शब्द नहीं होना चाहिए जैसे कि 'MYSQL'। एक मास्टर उपयोगकर्ता नाम, मास्टर पासवर्ड निर्दिष्ट करें (कम से कम 8 वर्ण होना चाहिए), और अगला चरण क्लिक करें। इसके बाद, उन्नत सेटिंग कॉन्फ़िगर करें . वीपीसी के लिए, नया वीपीसी बनाएं चुनें . सबनेट समूह के लिए, नया DB सबनेट समूह बनाएं चुनें . सार्वजनिक रूप से सुलभ . के लिए , हां . चुनें . उपलब्धता क्षेत्र . के लिए , कोई वरीयता नहीं select चुनें . VPC सुरक्षा समूह . के लिए , नया सुरक्षा समूह बनाएं चुनें. डेटाबेस नाम (MYSQLDB) सहित डेटाबेस विकल्प निर्दिष्ट करें, जो एक आरक्षित शब्द नहीं होना चाहिए जैसे कि 'MYSQL', और डेटाबेस पोर्ट (3306)। बैकअप के लिए डिफ़ॉल्ट सेटिंग्स रखें; एक डीएमएस स्रोत के रूप में आरडीएस पर MySQL का उपयोग करने के लिए स्वचालित बैकअप की आवश्यकता होती है। मॉनिटरिंग और रखरखाव के लिए डिफ़ॉल्ट सेटिंग्स रखें और डीबी इंस्टेंस लॉन्च करें click पर क्लिक करें . RDS पर MySQL डेटाबेस बन जाता है।

PostgreSQL डेटाबेस के लिए, RDS डेटाबेस इंजन को PostgreSQL . के रूप में चुनें , जैसा कि चित्र 3 में दिखाया गया है।


चित्र 3: PostgreSQL डेटाबेस इंजन का चयन करना

देव/परीक्षण परिनियोजन प्रकार चुनें और अगला चरण क्लिक करें। डीबी विवरण निर्दिष्ट करें; अधिकांश डिफ़ॉल्ट सेटिंग्स उपयुक्त हैं। DB उदाहरण पहचानकर्ता (postgresdb), मास्टर उपयोगकर्ता नाम, मास्टर पासवर्ड निर्दिष्ट करें और अगला चरण क्लिक करें। इसके बाद, उन्नत सेटिंग्स कॉन्फ़िगर करें, जिसमें डेटाबेस नाम के लिए डेटाबेस विकल्प (postgresdb), डेटाबेस पोर्ट (5432) शामिल हैं, और लॉन्च DB इंस्टेंस पर क्लिक करें। RDS पर PostgreSQL डेटाबेस लॉन्च हो जाता है। RDS पर MySQL डेटाबेस और PostgreSQL डेटाबेस को चित्र 4 में दिखाया गया है।


चित्र 4: आरडीएस पर MySQL और PostgreSQL डेटाबेस

डेटाबेस और DMS के बीच कनेक्टिविटी को कॉन्फ़िगर करना

डिफ़ॉल्ट रूप से, डेटाबेस माइग्रेशन सर्विस (DMS) RDS DB इंस्टेंस से कनेक्ट करने में सक्षम नहीं है। हमें आरडीएस डीबी इंस्टेंस के लिए सुरक्षा समूहों में कनेक्टिविटी जोड़ने की जरूरत है। सुरक्षा समूह . क्लिक करें कॉन्फ़िगरेशन विवरण . में लिंक करें MySQL RDS DB उदाहरण के लिए, जैसा कि चित्र 5 में दिखाया गया है।


चित्र 5: आरडीएस पर MySQL के लिए सुरक्षा समूह

सुरक्षा समूह कंसोल में, इनबाउंड टैब चुनें और संपादित करें . क्लिक करें (चित्र 6 देखें)।


चित्र 6: सुरक्षा समूह>संपादित करें

इनबाउंड नियम संपादित करें . में , टाइप करें . चुनें सभी ट्रैफ़िक . के रूप में , प्रोटोकॉल सभी . के रूप में , पोर्ट रेंज 0-65535 के रूप में, स्रोत कहीं भी . के रूप में और सहेजें . क्लिक करें , जैसा चित्र 7 में दिखाया गया है।


चित्र 7: सभी ट्रैफ़िक की अनुमति देने के लिए इनबाउंड नियमों को कॉन्फ़िगर करना

इनबाउंड नियम सभी ट्रैफ़िक की अनुमति देने के लिए कॉन्फ़िगर हो जाते हैं, जैसा कि चित्र 8 में दिखाया गया है।


चित्र 8: इनबाउंड>सभी ट्रैफ़िक

आउटबाउंड इनबाउंड नियमों को कॉन्फ़िगर करते समय, नियम भी सभी ट्रैफ़िक पर सेट हो जाने चाहिए, जैसा कि चित्र 9 में दिखाया गया है।


चित्र 9: आउटबाउंड>सभी ट्रैफ़िक

इसी तरह, PostgreSQL RDS DB इंस्टेंस के लिए सुरक्षा समूह लिंक पर क्लिक करें, जैसा कि चित्र 10 में दिखाया गया है, और सभी ट्रैफ़िक की अनुमति देने के लिए इनबाउंड/आउटबाउंड नियमों को कॉन्फ़िगर करें।


चित्र 10: सभी ट्रैफ़िक की अनुमति देने के लिए PostgreSQL के लिए सुरक्षा समूह को कॉन्फ़िगर करना

MySQL डेटाबेस से कनेक्ट करना

RDS पर MySQL डेटाबेस इंस्टेंस को माइग्रेट करते समय, पूरा डेटाबेस माइग्रेट किया जा सकता है, जिसमें सिस्टम स्कीमा और टेबल सहित सभी स्कीमा और टेबल शामिल हैं। इस खंड में, हम RDS पर MySQL डेटाबेस से जुड़ेंगे और dvohra को कुछ उपयोगकर्ता विशेषाधिकार प्रदान करेंगे। उपयोगकर्ता। MySQL डेटाबेस से कनेक्ट करने के लिए, डेटाबेस समापन बिंदु प्राप्त करें आरडीएस डैशबोर्ड से (चित्र 11 देखें)।


चित्र 11: समापन बिंदु प्राप्त करना

कमांड शेल में, MySQL डेटाबेस बिन डायरेक्टरी (C:Program FilesMySQLMySQL Server 5.7bin) से निम्न MySQL कमांड चलाएँ। यह एक MySQL CLI सत्र शुरू करेगा।

mysql -h mysqldb.crbmlbxmp8qi.us-east-1.rds.amazonaws.com
   -u dvohra -p

पासवर्ड दर्ज करें: . पर पासवर्ड निर्दिष्ट करें संकेत देना। एसक्यूएल कमांड प्रॉम्प्ट प्रदर्शित होता है, जैसा कि चित्र 12 में दिखाया गया है।


चित्र 12: CLI के साथ MySQL डेटाबेस से कनेक्ट करना

इसके बाद, DMS उपयोगकर्ता (dvohra) को RDS पर MySQL डेटाबेस इंस्टेंस के लिए विशेषाधिकार प्रदान करें।

GRANT ALTER, CREATE, DROP, INDEX, INSERT, UPDATE, DELETE,
   SELECT ON *.* TO 'dvohra'@'%';
GRANT ALL PRIVILEGES ON awsdms_control.* TO 'dvohra'@'%';

उपयोगकर्ता विशेषाधिकार सेट हो जाते हैं, जैसा कि चित्र 13 में दिखाया गया है।


चित्र 13: उपयोगकर्ता विशेषाधिकार जोड़ना

एक PostgreSQL डेटाबेस से कनेक्ट करना

कमांड शेल से आरडीएस पर पोस्टग्रेएसक्यूएल डेटाबेस से कनेक्ट करने के लिए, डेटाबेस प्राप्त करें समापन बिंदु आरडीएस डैशबोर्ड से, जैसा कि चित्र 14 में दिखाया गया है।


चित्र 14: RDS पर PostgreSQL डेटाबेस एंडपॉइंट प्राप्त करना

PostgreSQL डेटाबेस से कनेक्ट करने के लिए निम्न कमांड चलाएँ और कमांड लाइन इंटरफ़ेस (CLI) शुरू करें।

psql --host=postgresdb.crbmlbxmp8qi.us-east-1.rds.amazonaws.com
     --port=5432 --username dvohra --password --dbname=postgresdb

PostgreSQL डेटाबेस कमांड लाइन इंटरफ़ेस (CLI) शुरू हो जाता है, जैसा कि चित्र 15 में दिखाया गया है।


चित्र 15: सीएलआई के साथ आरडीएस पर पोस्टग्रेएसक्यूएल डेटाबेस से कनेक्ट करना

स्कीमा को dn . के साथ सूचीबद्ध करें आज्ञा। सार्वजनिक स्कीमा सूचीबद्ध हो जाती है (चित्र 16 देखें)।


चित्र 16: लिस्टिंग स्कीमा

निष्कर्ष

आरडीएस पर एक MySQL डेटाबेस इंस्टेंस को एडब्ल्यूएस डीएमएस के साथ आरडीएस पर एक पोस्टग्रेस डेटाबेस इंस्टेंस में माइग्रेट करने के चार ट्यूटोरियल में से, हमने आरडीएस पर दो डेटाबेस के उदाहरण बनाए और डेटाबेस इंस्टेंस से जुड़े। अगले ट्यूटोरियल में, हम एक डीएमएस माइग्रेशन बनाएंगे।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL एकाधिक तालिकाओं में सम्मिलित करें? (डेटाबेस सामान्यीकरण?)

  2. MySQL REPLACE () - एक सबस्ट्रिंग के सभी इंस्टेंस को दूसरे स्ट्रिंग से बदलें

  3. कैसे ठीक करें:jdbc के लिए कोई उपयुक्त ड्राइवर नहीं मिला:mysql:// localhost/dbname पूल का उपयोग करते समय त्रुटि?

  4. मिनट () उदाहरण – MySQL

  5. SQL क्वेरी MySQL में तालिका को हटाने के लिए