AWS DMS सेट करना
आइए व्यावहारिक रूप से शुरू करते हैं और AWS DMS सेट करते हैं। इस ट्यूटोरियल में, आप Oracle डेटाबेस को Amazon Aurora (MySQL) में माइग्रेट करना सीखेंगे—जिसमें स्कीमा रूपांतरण, डेटा रेप्लिकेशन, और सुगम ट्रांज़िशन सुनिश्चित करने के सर्वोत्तम तरीके शामिल हैं।
चरण 1: AWS DMS उपयोग करने के लिए पूर्वापेक्षाएँ
डेटाबेस माइग्रेट करने से पहले, आपको आवश्यक AWS संसाधन सेट करने होंगे। AWS CloudFormation का उपयोग करके, आप प्रोविजनिंग को स्वचालित कर सकते हैं ताकि आप माइग्रेशन कार्यों पर ध्यान केंद्रित कर सकें। जिस टेम्पलेट का हम उपयोग करेंगे, वह तैनात करता है:
- नेटवर्किंग के लिए पब्लिक सबनेट्स के साथ एक AWS VPC।
- डेटा माइग्रेशन करने के लिए एक AWS DMS Replication Instance।
- लक्ष्य डेटाबेस के रूप में एक Amazon RDS Instance।
- AWS Schema Conversion Tool (SCT) जैसे माइग्रेशन टूल रखने या स्रोत डेटाबेस सिमुलेशन के लिए एक Amazon EC2 Instance।
AWS कंसोल में लॉगिन करें
- लॉगिन करें AWS Management Console में अपनी साख का उपयोग करके।
- स्क्रीन के दाएँ ऊपरी कोने में ड्रॉप-डाउन मेनू पर क्लिक करें और अपना रीजन चुनें। इस ट्यूटोरियल के लिए मैं N. Virginia रीजन चुनूँगा।

चित्र 1 AWS Management Console में AWS रीजन चुनना।
- EC2 कंसोल पर जाएँ और Key Pair सेक्शन में नेविगेट करें। सुनिश्चित करें कि आप पिछले चरण वाले उसी AWS रीजन में हैं।
- Create Key Pair पर क्लिक करें और इसका नाम “DMS” रखें।
चित्र 2 AWS EC2 में सुरक्षित एक्सेस के लिए की-पेयर बनाना।
- Create पर क्लिक करें, और आपका ब्राउज़र
DMS.pemडाउनलोड कर लेगा। - इस फ़ाइल को सुरक्षित रखें—आपको इसकी आवश्यकता आगे ट्यूटोरियल में पड़ेगी।
पर्यावरण कॉन्फ़िगर करें
इस चरण में, आप एक CloudFormation (CFN) टेम्पलेट का उपयोग करके डेटाबेस माइग्रेशन के लिए आवश्यक AWS इन्फ्रास्ट्रक्चर सेट करेंगे। यह प्रोविजनिंग को स्वचालित करता है, जिससे आप माइग्रेशन कार्यों पर ध्यान केंद्रित कर सकें।
- AWS CloudFormation कंसोल खोलें और Create Stack पर क्लिक करें।
- Choose an existing template चुनें, फिर Upload a template file चुनें।

चित्र 3 नया स्टैक बनाने के लिए CloudFormation टेम्पलेट अपलोड करना।
- Github Gist से फ़ाइल डाउनलोड करें और Choose file पर क्लिक करें।
DMS.yamlफ़ाइल अपलोड करें और Next पर क्लिक करें।- आवश्यक पैरामीटर्स भरें, फिर Next पर क्लिक करें।

चित्र 4 AWS DMS CloudFormation स्टैक के पैरामीटर्स कॉन्फ़िगर करना
नोट: आप अपनी आवश्यकता अनुसार इंस्टेंस टाइप समायोजित कर सकते हैं या यथावत रख सकते हैं।
- Stack Options पेज पर डिफ़ॉल्ट सेटिंग्स रहने दें और Next पर क्लिक करें।
- कॉन्फ़िगरेशन की समीक्षा करें और Create stack पर क्लिक करें।
- आप CloudFormation कंसोल पर रीडायरेक्ट होंगे, जहाँ स्टेटस “CREATE_IN_PROGRESS” दिखेगा। इसके “CREATE_COMPLETE” में बदलने तक प्रतीक्षा करें।

चित्र 5 AWS CloudFormation में संसाधन निर्माण की स्थिति की समीक्षा करना
- पूरा होने पर, Outputs सेक्शन में जाएँ और मानों को नोट कर लें—ट्यूटोरियल के बाकी हिस्से में उनकी आवश्यकता होगी।
माइग्रेशन के लिए स्रोत और लक्ष्य डेटाबेस तैयार करें
हम स्रोत डेटाबेस कॉन्फ़िगरेशन से शुरू करेंगे। Remote Desktop Protocol (RDP) का उपयोग कर EC2 इंस्टेंस तक पहुँचने के लिए ये चरण अपनाएँ।
चरण 1: RDP एक्सेस सेट करें
- Mac उपयोगकर्ताओं के लिए: App Store से Microsoft Remote Desktop डाउनलोड करें।
- PC उपयोगकर्ताओं के लिए: आपने जो PC सेट किया है, उससे कनेक्ट होने के लिए Remote Desktop का उपयोग करें।
चरण 2: RDP एक्सेस के लिए सिक्योरिटी ग्रुप नियम संशोधित करें
- AWS EC2 कंसोल खोलें।
- बाएँ मेनू में Security Groups पर क्लिक करें (शायद नीचे स्क्रॉल करना पड़े)।
- “InstanceSecurityGroup” पर समाप्त होने वाले सिक्योरिटी ग्रुप का चयन करें।
- Actions > Edit Inbound Rules पर क्लिक करें।
- RDP नियम (पोर्ट 3389) ढूँढें, Source पर क्लिक करें, और बेहतर सुरक्षा के लिए My IP चुनें।
- यदि आप कॉर्पोरेट VPN या जटिल नेटवर्क पर हैं, तो बाद में इसे “Anywhere (0.0.0.0/0)” पर बदलने की आवश्यकता हो सकती है।

चित्र 6 AWS में इनबाउंड सिक्योरिटी नियम संपादित करना।
- Save rules पर क्लिक करें।
चरण 3: RDP क्रेडेंशियल प्राप्त करें
- AWS EC2 कंसोल में, बाएँ मेनू में Instances पर क्लिक करें।
- “<StackName>-EC2Instance” नाम वाले इंस्टेंस का चयन करें।
- Actions > Connect पर क्लिक करें।
- RDP Client सेक्शन में जाएँ और Get password पर क्लिक करें।
- Browse पर क्लिक करें और पहले डाउनलोड की गई Key Pair फ़ाइल अपलोड करें।
- Decrypt password पर क्लिक करें।

चित्र 7 AWS EC2 इंस्टेंस के लिए Windows पासवर्ड प्राप्त करना।
- उत्पन्न पासवर्ड को बाद में उपयोग के लिए नोट्स में कॉपी करें।
चरण 4: EC2 इंस्टेंस से कनेक्ट करें
- Download Remote Desktop File पर क्लिक करके RDP फ़ाइल सहेजें।
- RDP क्लाइंट खोलें (Mac पर Microsoft Remote Desktop)।
- डिक्रिप्ट किया हुआ पासवर्ड उपयोग करके लॉगिन करें।
- यदि संकेत दिया जाए, तो सेटअप पूरा करने के लिए Done पर क्लिक करें।
चरण 5: Oracle SQL Developer से कनेक्ट करें
EC2 इंस्टेंस से कनेक्ट होने के बाद, Oracle SQL Developer का उपयोग करके Oracle डेटाबेस से कनेक्शन स्थापित करने के लिए ये चरण अपनाएँ।
चरण 1: Oracle SQL Developer खोलें
- टास्कबार में Oracle SQL Developer ढूँढें और खोलें।
- नोट: आपके आइकन संदर्भ चित्रों में दिखाए क्रम से अलग हो सकते हैं।

चित्र 8 Oracle SQL Developer में नया डेटाबेस कनेक्शन कॉन्फ़िगर करना।
चरण 2: नया डेटाबेस कनेक्शन बनाएँ
- बाएँ मेनू में प्लस (+) पर क्लिक करें और New Database Connection बनाएँ।
- निम्न विवरण दर्ज करें:
- Connection Name: Source Oracle
- Username: dbadmin
- Password: CloudFormation Stack के Outputs टैब में DMSDBSecretP के अंतर्गत देखें
- Save Password: इस बॉक्स को चेक करें।
- Hostname: CloudFormation Output टैब से Source Oracle Endpoint ढूँढें। वैकल्पिक रूप से RDS कंसोल में जाएँ, अपने Oracle स्रोत इंस्टेंस का चयन करें, और दिए गए एंडपॉइंट का उपयोग करें।
- Port: 1521
- SID: ORACLEDB
चरण 3: टेस्ट करें और कनेक्ट करें
- कनेक्शन सत्यापित करने के लिए Test पर क्लिक करें।
- जब टेस्ट स्टेटस “Successful” दिखाए, तो Connect पर क्लिक करें।
चरण 4: AWS DMS माइग्रेशन के लिए Oracle कॉन्फ़िगर करना
Oracle को AWS DMS के स्रोत के रूप में उपयोग करने से पहले, सुनिश्चित करें कि निम्न कॉन्फ़िगरेशन लागू हैं:
1. आवश्यक विशेषाधिकारों के साथ DMS उपयोगकर्ता बनाएँ
AWS DMS को Oracle डेटाबेस पर पढ़ने और लिखने के विशेषाधिकारों वाले एक यूज़र अकाउंट (DMS यूज़र) की आवश्यकता होती है।
2. ARCHIVELOG MODE सक्षम करें
- ARCHIVELOG MODE को LogMiner को ट्रांज़ैक्शन लॉग जानकारी उपलब्ध कराने के लिए सक्षम करना आवश्यक है।
- AWS DMS, आर्काइव लॉग से चेंज डेटा कैप्चर करने के लिए LogMiner पर निर्भर करता है।
- माइग्रेशन के दौरान डेटा हानि से बचने के लिए सुनिश्चित करें कि आर्काइव लॉग कम से कम 24 घंटे तक संरक्षित रहें।
3. सप्लीमेंटल लॉगिंग सक्षम करें
- डेटाबेस-स्तरीय सप्लीमेंटल लॉगिंग:
- यह सुनिश्चित करता है कि LogMiner विभिन्न टेबल स्ट्रक्चर (जैसे, क्लस्टर्ड और इंडेक्स-ऑर्गनाइज़्ड टेबल) के लिए आवश्यक सभी विवरण कैप्चर करे।
- टेबल-स्तरीय सप्लीमेंटल लॉगिंग:
- जिन टेबल्स को आप माइग्रेट करना चाहते हैं, उन प्रत्येक के लिए इसे सक्षम करना आवश्यक है।
4. AWS DMS उपयोगकर्ता को आवश्यक विशेषाधिकार दें
- Oracle SQL Developer में, SQL Worksheet आइकन पर क्लिक करें।
- Source Oracle डेटाबेस से कनेक्ट करें।
- Github Gist से स्टेटमेंट कॉपी-पेस्ट करें और चलाएँ, ताकि AWS DMS उपयोगकर्ता को आवश्यक विशेषाधिकार दिए जा सकें।

चित्र 9 Oracle SQL Developer में SQL स्क्रिप्ट्स निष्पादित करना।
चरण 6: Amazon Aurora (MySQL) लक्ष्य कॉन्फ़िगर करें
प्रारंभिक सेटअप और स्रोत डेटाबेस चुनने के बाद, आप एक सैंपल डेटाबेस माइग्रेट कर सकते हैं। यह गाइड बताएगा कि AWS Schema Conversion Tool (AWS SCT) और AWS Database Migration Service (AWS DMS) का उपयोग करके डेटाबेस संरचना कैसे रूपांतरित करें और डेटा को Amazon Aurora (MySQL) में कैसे स्थानांतरित करें।
साथ ही, AWS DMS सतत रेप्लिकेशन सक्षम करने वाले टूल के रूप में कार्य करेगा, यानी स्रोत डेटाबेस में किए गए सभी बदलाव लक्ष्य डेटाबेस में वास्तविक समय में प्रतिलिपि किए जाएँगे।
- RDP के माध्यम से EC2 इंस्टेंस से पुन: कनेक्ट करें।
- डेस्कटॉप पर DMS Workshop फ़ोल्डर खोलें और नवीनतम संस्करण इंस्टॉल करने के लिए AWS Schema Conversion Tool Download पर डबल-क्लिक करें।
- AWS SCT को अनज़िप करें और इंस्टॉल विज़ार्ड का पालन करते हुए इंस्टॉल करें (डिफ़ॉल्ट लें और Finish पर क्लिक करें)।
- Start Menu या डेस्कटॉप पर SCT के नारंगी आइकन से AWS SCT लॉन्च करें और शर्तें स्वीकार करें।
- MySQL Workbench 8.0 CE खोलें और लक्ष्य Aurora MySQL के लिए नया डेटाबेस कनेक्शन बनाएँ:
- Connection Name: Target Aurora RDS (MySQL)
- Host Name:
<TargetAuroraMySQLEndpoint>(CloudFormation Outputs या RDS कंसोल में खोजें) - Port: 3306
- Username: dbadmin
- Password: CloudFormation Output टैब से प्राप्त करें
- Default Schema: खाली छोड़ें

चित्र 10 Amazon Aurora के लिए MySQL Workbench कनेक्शन सेट करना।
- Test Connection पर क्लिक करें, सफलता की पुष्टि करें, फिर Aurora MySQL से कनेक्ट करें।
- MySQL Workbench में GitHub Gist में दिए SQL स्टेटमेंट्स चलाएँ (रन करने के लिए बिजली के आइकन पर क्लिक करें)।
अब जब आपने AWS Schema Conversion Tool इंस्टॉल कर लिया है, अगला चरण इस टूल का उपयोग कर एक Database Migration Project बनाना है।
चरण 1: नया प्रोजेक्ट शुरू करें
- AWS Schema Conversion Tool (SCT) खोलें।
- यदि New Project Wizard स्वतः शुरू नहीं होता, तो File > New Project Wizard पर जाएँ।
- निम्न विवरण दर्ज करें:
- Project Name: AWS Schema Conversion Tool Source DB to Aurora MySQL
- Location:
C:\Users\Administrator\AWS Schema Conversion Tool - Database Type: SQL Database चुनें
- Source Engine: Oracle
- Migration Type: I want to switch engines and optimize for the cloud चुनें
- Next पर क्लिक करें।
चरण 2: स्रोत डेटाबेस से कनेक्ट करें
- Source Database Configuration भरें:
- Connection Name: Oracle Source
- Type: SID
- Server Name:
<SourceOracleEndpoint>(CloudFormation Outputs या RDS कंसोल में खोजें) - Server Port: 1521
- Oracle SID: ORACLEDB
- User Name: dbadmin
- Password: CloudFormation Output टैब से प्राप्त करें
- Use SSL: Unchecked
- Store Password: Checked
- Oracle Driver Path:
C:\Users\Administrator\Desktop\DMS Workshop\JDBC\ojdbc11.jar
- Test Connection पर क्लिक करें। सफल होने पर, Next पर क्लिक करें।

चित्र 11 AWS Schema Conversion Tool में डेटाबेस कनेक्टिविटी टेस्ट करना।
चरण 3: डेटाबेस चुनें और असेसमेंट रिपोर्ट की समीक्षा करें
dms_sampleडेटाबेस का चयन करें, फिर Next पर क्लिक करें।- यदि मेटाडेटा लोडिंग चेतावनियाँ दिखाई दें, तो उन्हें अनदेखा करें।
- Database Migration Assessment Report की समीक्षा करें:

चित्र 12 डेटाबेस माइग्रेशन असेसमेंट परिणामों की समीक्षा।
- समीक्षा के बाद, Next पर क्लिक करें।
नोट: SCT अधिकांश ऑब्जेक्ट्स को स्वतः कन्वर्ट कर देता है और उन पर प्रकाश डालता है जिन्हें मैनुअल हस्तक्षेप की आवश्यकता होती है। प्रोसिजर, पैकेज, और फ़ंक्शंस पर विशेष ध्यान दें—इनमें संशोधन की आवश्यकता पड़ सकती है।
चरण 4: लक्ष्य डेटाबेस से कनेक्ट करें
- Target Database Configuration भरें:
- Target Engine: Amazon Aurora (MySQL compatible) (डिफ़ॉल्ट से बदलें)
- Connection Name: Aurora MySQL Target
- Server Name:
<TargetAuroraMySQLEndpoint>(CloudFormation Outputs या RDS कंसोल में खोजें) - Server Port: 3306
- User Name: dbadmin
- Password: CloudFormation Output टैब से प्राप्त करें
- Use SSL: Unchecked
- Store Password: Checked
- MySQL Driver Path:
C:\Users\Administrator\Desktop\DMS Workshop\JDBC\mysql-connector-j-8.3.0.jar - Test Connection पर क्लिक करें। सफल होने पर, Finish पर क्लिक करें।
अब जब आपने Database Migration Project बना लिया है, तो अगला चरण स्रोत डेटाबेस स्कीमा को Amazon Aurora MySQL में कन्वर्ट करना है।
चरण 5: स्रोत डेटाबेस स्कीमा को Amazon Aurora MySQL में कन्वर्ट करना
- ऊपर मेनू में View पर क्लिक करें और Assessment Report View चुनें।
- बाएँ पैनल में
DMS_SAMPLEचुनें ताकि डेटाबेस पदानुक्रम दिखे। - Action Items टैब में जाएँ ताकि वे स्कीमा तत्व दिखें जिन्हें स्वतः कन्वर्ट नहीं किया जा सका।
- AWS SCT आइटम्स को इस प्रकार वर्गीकृत करता है:
- हरा – सफलतापूर्वक कन्वर्ट हुआ।
- नीला – माइग्रेशन से पहले मैनुअल संशोधन आवश्यक।
- जिन स्कीमा तत्वों को स्वतः कन्वर्ट नहीं किया जा सकता, उनके लिए आपके पास दो विकल्प हैं:
- स्रोत स्कीमा में संशोधन करें।
- लक्ष्य डेटाबेस पर लागू करने से पहले जनरेटेड SQL स्क्रिप्ट्स संपादित करें। हम AWS SCT में एक स्टोर्ड प्रोसिजर को मैन्युअल रूप से समायोजित करेंगे ताकि वह Aurora MySQL के साथ संगत हो।
चरण 6: SQL कोड संशोधित करें
- बाएँ पैनल में
DMS_SAMPLEडेटाबेस पर राइट-क्लिक करें। - Convert Schema चुनें ताकि लक्ष्य डेटाबेस के Data Definition Language (DDL) स्टेटमेंट्स जनरेट हो सकें।
- मौजूदा ऑब्जेक्ट्स के बारे में संकेत मिलने पर, Yes पर क्लिक करें।

चित्र 13 AWS Schema Conversion Tool का उपयोग कर Oracle स्कीमा को कन्वर्ट करना।
- दाएँ पैनल में
dms_sample_dbo(SQL Server स्रोत) याdms_sample(अन्य स्रोत) स्कीमा पर राइट-क्लिक करें। - Apply to database चुनें।
- प्रॉम्प्ट आने पर पुष्टि के लिए Yes पर क्लिक करें।
- दाएँ पैनल में
dms_sample_dboयाdms_sampleस्कीमा विस्तृत करें। - अब आपको Aurora MySQL में सफलतापूर्वक बने टेबल, व्यू, स्टोर्ड प्रोसिजर, और अन्य ऑब्जेक्ट्स दिखने चाहिए।
आपने सफलतापूर्वक डेटाबेस स्कीमा और ऑब्जेक्ट्स को Amazon Aurora MySQL के संगत स्वरूप में कन्वर्ट कर लिया है!
चरण 2: रेप्लिकेशन इंस्टेंस बनाना
DMS Replication Instance बनाने के लिए निम्न चरणों का पालन करें:
- AWS Database Migration Service (DMS) कंसोल खोलें या AWS सर्च बार में DMS खोजें।
- बाएँ मेनू में Replication Instances पर क्लिक करें ताकि रेप्लिकेशन इंस्टेंस प्रबंधन स्क्रीन खुल जाए।
- यदि एक प्री-कॉन्फ़िगर्ड रेप्लिकेशन इंस्टेंस उपलब्ध है, तो आप यह चरण छोड़ सकते हैं। हालाँकि, यदि आप व्यावहारिक अनुभव चाहते हैं, तो नया इंस्टेंस बनाने की प्रक्रिया जारी रखें:
- ऊपर दाएँ कोने में Create replication instance पर क्लिक करें। फिर निम्न विवरण भरें:
- Name: DMSReplication-dms
- Descriptive Amazon Resource Name (ARN): खाली छोड़ें
- Description: (वैकल्पिक) "Replication server for Database Migration" दर्ज करें
- Instance Class: dms.c5.xlarge
- Engine Version: डिफ़ॉल्ट मान रहने दें।
- High Availability / Multi-AZ: Dev या Test workload (Single-AZ) चुनें
- Allocated Storage (GB): 50
- VPC: वह VPC ID चुनें जिसके नाम में DMSVpc शामिल है (आवश्यक हो तो ड्रॉप-डाउन समायोजित करें)
- Publicly Accessible: No (अनचेक) रखें
- Advanced -> VPC Security Group(s): डिफ़ॉल्ट सिक्योरिटी ग्रुप चुनें

चित्र 14 रेप्लिकेशन इंस्टेंस बनाना।
- रेप्लिकेशन इंस्टेंस के लिए आवश्यक विवरण दर्ज करें, फिर Create पर क्लिक करें।
चरण 3: स्रोत और लक्ष्य एंडपॉइंट कॉन्फ़िगर करना
अब जब हमारे पास रेप्लिकेशन इंस्टेंस है, अगला चरण डेटाबेस माइग्रेशन के लिए स्रोत और लक्ष्य एंडपॉइंट बनाना है। दोनों एंडपॉइंट कॉन्फ़िगर करने के लिए ये चरण अपनाएँ।
स्रोत एंडपॉइंट बनाएँ
- AWS DMS कंसोल खोलें।
- बाएँ मेनू में Endpoints पर क्लिक करें।
- Create endpoint (ऊपर दाएँ) पर क्लिक करें।
- स्रोत डेटाबेस एंडपॉइंट के लिए आवश्यक विवरण दर्ज करें:
- Endpoint Type: Source endpoint
- Select RDS DB Instance: केवल Oracle के लिए चेक करें (अन्य के लिए खाली छोड़ें)
- RDS Instance:
<StackName>-SourceOracleDBचुनें - Endpoint Identifier: oracle-source (या पूर्व-भरा मान रखें)
- Descriptive ARN: खाली छोड़ें
- Source Engine: Oracle
- Access to Endpoint Database: “Provide access information manually” चुनें
- Server Name:
<SourceOracleEndpoint>(स्वतः भर जाना चाहिए)। - Port: 1521
- SSL Mode: None
- User Name: dbadmin
- Password: CloudFormation Stack के Outputs टैब में 2DMSDBSecretP के अंतर्गत देखें
- SID/Service Name: ORACLEDB
- VPC: पर्यावरण सेटअप से DMSVpc वाला VPC ID चुनें
- Replication Instance:
cfn-DMSReplication,DMSReplication, या आपका बनाया रेप्लिकेशन इंस्टेंस चुनें (यदि तैयार है) - कनेक्टिविटी सत्यापित करने के लिए Run Test पर क्लिक करें।

चित्र 15 कनेक्टिविटी सत्यापित करना।
- जब टेस्ट स्टेटस “Successful” में बदल जाए, तो Create endpoint पर क्लिक करें।
लक्ष्य एंडपॉइंट बनाएँ
Aurora RDS डेटाबेस के Target Endpoint बनाने के लिए वही प्रक्रिया अपनाएँ:
- फिर से Create endpoint पर क्लिक करें।
- निम्न विवरण दर्ज करें:
- Endpoint Type: Target endpoint
- Select RDS DB Instance: सभी RDS डेटाबेस लक्ष्यों के लिए बॉक्स चेक करें
- RDS Instance:
<StackName>-AuroraMySQLInstanceचुनें - Endpoint Identifier:
aurora-mysql-target - Descriptive ARN: खाली छोड़ें
- Target Engine: Amazon Aurora MySQL
- Access to Endpoint Database: “Provide access information manually” चुनें
- Server Name:
TargetAuroraMySQLEndpoint(या स्वतः भर जाना चाहिए)। - Port: 3306
- SSL Mode: None
- User Name:
dbadmin - Password: CloudFormation Stack के Outputs टैब में 2DMSDBSecretP के अंतर्गत जाँचें
- VPC: पर्यावरण सेटअप से DMSVpc वाला VPC ID चुनें
- Replication Instance:
cfn-DMSReplication,DMSReplication, या आपका बनाया रेप्लिकेशन इंस्टेंस चुनें (यदि तैयार है) - कनेक्टिविटी सत्यापित करने के लिए Run Test पर क्लिक करें।
- जब टेस्ट स्टेटस “Successful” में बदल जाए, तो Create endpoint पर क्लिक करें।
चरण 4: माइग्रेशन टास्क सेट करना
AWS DMS माइग्रेशन में फॉरेन की कॉन्स्ट्रेंट्स का प्रबंधन
AWS DMS फुल लोड के दौरान लोड की जाने वाली तालिकाओं का क्रम निर्धारित नहीं करता, जिससे कॉन्स्ट्रेंट्स सक्षम होने पर फॉरेन की उल्लंघन हो सकते हैं। इसके अलावा, टार्गेट डेटाबेस पर ट्रिगर्स डेटा में अप्रत्याशित बदलाव करा सकते हैं। हमने टार्गेट Aurora MySQL डेटाबेस से फॉरेन की कॉन्स्ट्रेंट्स भी हटा दिए।
- MySQL Workbench 8.0 CE लॉन्च करें (जिसका उपयोग पहले परमिशन सेटअप के लिए किया गया था)।
- एक नया क्वेरी विंडो खोलें।
- फॉरेन की कॉन्स्ट्रेंट्स हटाएँ: Oracle से माइग्रेट करते समय AWS SCT स्वतः कॉन्स्ट्रेंट्स नहीं बनाता; यह केवल इंडेक्स बनाता है। इंडेक्स हटाने के लिए निम्न SQL स्क्रिप्ट चलाएँ:
DROP INDEX set_seat_idx ON dms_sample.sporting_event_ticket;
DROP INDEX set_ticketholder_idx ON dms_sample.sporting_event_ticket;
DROP INDEX set_sporting_event_idx ON dms_sample.sporting_event_ticket;
- स्क्रिप्ट चलाने के लिए Execute (बिजली) आइकन पर क्लिक करें।

आकृति 16 MySQL Workbench इंटरफ़ेस जिसमें SQL क्वेरीज़ दिख रही हैं।
कॉन्स्ट्रेंट्स हट जाने के बाद, टार्गेट Aurora MySQL डेटाबेस अब AWS DMS का उपयोग करके डेटा माइग्रेशन के लिए तैयार है!
एक DMS माइग्रेशन टास्क बनाएँ
AWS DMS, सोर्स से टार्गेट डेटाबेस तक डेटा ले जाने के लिए Database Migration Tasks का उपयोग करता है। माइग्रेशन टास्क बनाने और मॉनिटर करने के लिए ये चरण अपनाएँ।
चरण 1: माइग्रेशन टास्क बनाएँ
- AWS DMS कंसोल खोलें।
- बाएँ मेनू में Database migration tasks पर क्लिक करें।
- ऊपर दाएँ कोने में Create task पर क्लिक करें।
चरण 2: टास्क सेटिंग्स कॉन्फ़िगर करें
- Task Identifier:
source-to-AuroraMySQL-target - Replication Instance:
cfn-dmsreplication - Source Database Endpoint: अपना सोर्स डेटाबेस चुनें
- Target Database Endpoint:
cfn-auroramysqlinstance - Migration Type: मौजूदा डेटा माइग्रेट करें और चल रहे बदलावों को भी रिप्लिकेट करें
- CDC Stop Mode: कस्टम CDC स्टॉप मोड का उपयोग न करें
- Create Recovery Table on Target DB: अनचेक्ड
- Target Table Preparation Mode: कुछ न करें (डिफ़ॉल्ट नहीं)
- Stop Task After Full Load Completes: बंद न करें
- LOB Column Settings / Include LOB Columns in Replication: Limited LOB मोड
- Max LOB Size (KB): 32
- Data Validation: अनचेक्ड
- Enable CloudWatch Logs: चेक्ड
- Log Context: डिफ़ॉल्ट स्तर
- Batch-Optimized Apply: अनचेक्ड
चरण 3: टेबल मैपिंग्स कॉन्फ़िगर करें
- Table mappings सेक्शन को विस्तार दें।
- एडिटिंग मोड के रूप में Wizard चुनें।
- Add new selection rule पर क्लिक करें, फिर निम्न दर्ज करें:
- Schema:
DMS_SAMPLE% - Table Name:
% - Action: Include

आकृति 17 टेबल मैपिंग कॉन्फ़िगर करें।
चरण 4: ट्रांसफ़ॉर्मेशन नियम कॉन्फ़िगर करें
- Transformation rules सेक्शन को विस्तार दें।
- Add new transformation rule पर क्लिक करें और निम्न नियम दर्ज करें:
- Rule 1:
- Target: Schema
- Schema Name:
DMS_SAMPLE - Action: छोटे अक्षरों में बदलें
- Rule 2:
- Target: Table
- Schema Name:
DMS_SAMPLE - Table Name:
% - Action: छोटे अक्षरों में बदलें
- Rule 3:
- Target: Column
- Schema Name:
DMS_SAMPLE - Table Name:
% - Action: छोटे अक्षरों में बदलें
चरण 5: माइग्रेशन टास्क फ़ाइनलाइज़ करें और शुरू करें
- Turn on premigration assessment को अनचेक करें (इस ट्यूटोरियल के लिए आवश्यक नहीं)।
- सुनिश्चित करें कि Migration task startup configuration Start automatically on create पर सेट है।
- Create task पर क्लिक करें।
माइग्रेशन करना
आखिरकार अब हमारा माइग्रेशन करने का समय आ गया है!
चरण 1: माइग्रेशन शुरू करना
टास्क निम्न स्टेटस से गुजरेगा:
- Creating → Ready → Starting → Running.
- स्टेटस अपडेट करने के लिए गोल रिफ्रेश बटन पर क्लिक करें।

আकृति 18 AWS DMS माइग्रेशन टास्क इंटरफ़ेस जो चल रही प्रतिकृति दिखा रहा है।
चरण 2: माइग्रेशन मॉनिटर करना
AWS DMS, आपके रिप्लिकेशन इंस्टेंस और माइग्रेशन टास्क के प्रदर्शन की मॉनिटरिंग के लिए CloudWatch मेट्रिक्स प्रदान करता है।
रिप्लिकेशन इंस्टेंस के लिए CloudWatch मेट्रिक्स देखना:
- AWS DMS कंसोल खोलें।
- बाएँ मेनू में Replication Instances पर क्लिक करें।
- अपना रिप्लिकेशन इंस्टेंस चुनें।
- प्रदर्शन डेटा देखने के लिए CloudWatch Metrics टैब पर जाएँ।

आकृति 19 AWS DMS इंस्टेंस रिसोर्स यूटिलाइज़ेशन ग्राफ़्स।
माइग्रेशन टास्क के लिए CloudWatch मेट्रिक्स देखना:
- AWS DMS कंसोल खोलें।
- बाएँ मेनू में Database Migration Tasks पर क्लिक करें।
- सूची में से अपना DMS टास्क चुनें।
- टास्क प्रदर्शन का विश्लेषण करने के लिए Monitor टैब पर जाएँ।

आकृति 20 AWS DMS फुल लोड थ्रूपुट मेट्रिक्स।
CloudWatch के साथ, आप लेटेंसी, रिप्लिकेशन लैग और टास्क स्टेटस जैसे प्रमुख मेट्रिक्स ट्रैक कर सकते हैं।
चरण 3: माइग्रेशन त्रुटियों और चेतावनियों का प्रबंधन
AWS DMS माइग्रेशन के दौरान, कनेक्शन विफलताओं, डेटा इंटीग्रिटी समस्याओं या मिसकॉन्फ़िगरेशन के कारण त्रुटियाँ और चेतावनियाँ उत्पन्न हो सकती हैं। नीचे सामान्य समस्याएँ और उन्हें हल करने के लिए ट्रबलशूटिंग चरण दिए गए हैं।
1. कनेक्शन विफलताएँ
- समस्या: DMS सोर्स या टार्गेट डेटाबेस से कनेक्ट नहीं हो पा रहा है।
- समाधान:
- VPC सेटिंग्स, Security Groups, और Subnet उपलब्धता की जाँच करें।
- सही डेटाबेस होस्टनेम, पोर्ट और क्रेडेंशियल्स उपयोग हो रहे हों यह सुनिश्चित करें।
- DMS कंसोल में Test Endpoint Connection पर क्लिक करके कनेक्टिविटी जाँचें।
2. डेटा इंटीग्रिटी समस्याएँ
- समस्या: सोर्स और टार्गेट के बीच डेटा गायब है या असंगत है।
- समाधान:
- गायब ट्रांजैक्शंस की जाँच के लिए CDC वैलिडेशन सक्षम करें।
- CloudWatch मेट्रिक्स का उपयोग करके रो काउंट्स की तुलना करें।
- डेटा स्थिरता सुनिश्चित करने के लिए दोनों डेटाबेस पर चेकसम वैलिडेशन क्वेरी चलाएँ।
3. प्रदर्शन बाधाएँ
- समस्या: माइग्रेशन धीमा है या लैग कर रहा है।
- समाधान:
- बुल्क ट्रांसफ़र्स की गति बढ़ाने के लिए Parallel Load सक्षम करें।
- LOB मोड समायोजित करें (बड़े ऑब्जेक्ट्स के लिए Full LOB मोड का उपयोग करें)।
- CPU, मेमोरी और रिप्लिकेशन लैग के लिए CloudWatch मेट्रिक्स मॉनिटर करें।
4. टार्गेट डेटाबेस कॉन्स्ट्रेंट्स और ट्रिगर्स
- समस्या: फॉरेन की उल्लंघन या अप्रत्याशित डेटा संशोधन।
- समाधान:
- माइग्रेशन से पहले फॉरेन की कॉन्स्ट्रेंट्स को अक्षम करें।
- संघर्षों से बचने के लिए टार्गेट डेटाबेस पर ट्रिगर्स को अस्थायी रूप से ड्रॉप करें।
5. CDC प्रतिकृति अप्रत्याशित रूप से रुक गई
- समस्या: टास्क चल रहे बदलाव लागू करने से पहले ही रुक जाता है।
- समाधान:
- लॉग्स में CDC स्टार्ट पोजिशन जाँचें।
- लॉग्स के लिए रिटेंशन अवधि पर्याप्त हो (जैसे, Oracle LogMiner के लिए 24 घंटे) यह सुनिश्चित करें।
- अंतिम लागू लेन-देन से CDC टास्क को पुनः प्रारंभ करें।
6. सोर्स और टार्गेट के बीच स्कीमा असंगति
- समस्या: कुछ ऑब्जेक्ट्स स्कीमा भिन्नताओं के कारण माइग्रेट होने में विफल रहते हैं।
- समाधान:
- असंगतियों का आकलन करने के लिए AWS SCT (Schema Conversion Tool) का उपयोग करें।
- आवश्यक होने पर मैनुअल स्कीमा संशोधन लागू करें।
7. लॉग जाँचना और त्रुटियों का डिबग करना
- AWS CloudWatch लॉग्स का उपयोग करें:
- यहाँ जाएँ: AWS DMS Console > Migration Tasks > View Logs।
- लॉग्स में failure, timeout, या constraint violation जैसे त्रुटि कीवर्ड्स द्वारा फ़िल्टर करें।
- यदि गहन विश्लेषण चाहिए तो Verbose Logging सक्षम करें।
पोस्ट-माइग्रेशन चरण
अब, आइए देखें कि DMS के साथ माइग्रेशन के बाद आप कौन-से कदम उठा सकते हैं।
चरण 1: डेटा इंटीग्रिटी का वैलिडेशन
AWS DMS माइग्रेशन पूरा करने के बाद, डेटा इंटीग्रिटी का वैलिडेशन करना और यह सुनिश्चित करना महत्वपूर्ण है कि टार्गेट डेटाबेस सोर्स को सही तरीके से परिलक्षित करता है। नीचे प्रमुख वैलिडेशन तकनीकें दी गई हैं:
AWS DMS डेटा वैलिडेशन फीचर का उपयोग
- यदि AWS DMS में डेटा वैलिडेशन सक्षम था, तो यहाँ नेविगेट करें:
- AWS DMS Console > Migration Tasks > Table Statistics
- किसी भी वैलिडेशन विफलता की जाँच करें और प्रभावित तालिकाओं के लिए माइग्रेशन पुनः चलाएँ।

आकृति 21 AWS DMS वैलिडेशन सारांश।
चरण 2: टार्गेट डेटाबेस पर कटओवर करना
जब AWS DMS ने सभी डेटा को सफलतापूर्वक माइग्रेट कर लिया हो और चल रही प्रतिकृति (CDC) पूरी कर ली हो, तब अंतिम चरण टार्गेट डेटाबेस को प्राथमिक सिस्टम के रूप में प्रमोट करना है। सुचारु ट्रांज़िशन सुनिश्चित करने के लिए ये चरण अपनाएँ:
चरण 1: डेटा स्थिरता की जाँच करें
स्विचओवर से पहले, सत्यापित करें कि सारा डेटा पूरी तरह रिप्लिकेट हो चुका है:
- सोर्स और टार्गेट के बीच रो काउंट्स जाँचें।
- प्रमुख तालिकाओं पर चेकसम वैलिडेशन चलाएँ।
- CloudWatch मेट्रिक्स में रिप्लिकेशन लैग की समीक्षा करें (कटओवर से पहले शून्य होना चाहिए)।
चरण 2: सोर्स डेटाबेस पर नए बदलाव रोकें
डेटा असंगतियों को रोकने के लिए:
- सोर्स डेटाबेस को रीड-ओनली मोड में सेट करके राइट्स को अक्षम करें।
- सुनिश्चित करें कि डेटाबेस पर लिखने वाले सभी एप्लिकेशन अब नए टार्गेट की ओर इंगित कर रहे हों।
चरण 3: AWS DMS प्रतिकृति रोकें
- AWS DMS कंसोल में Database Migration Tasks पर जाएँ।
- अपना सक्रिय माइग्रेशन टास्क चुनें।
- चल रही प्रतिकृति रोकने के लिए Stop Task पर क्लिक करें।

आकृति 22 AWS DMS माइग्रेशन टास्क स्टॉप।
चरण 4: टार्गेट डेटाबेस को प्राथमिक बनाना
- टार्गेट डेटाबेस पर रीड-ओनली प्रतिबंध हटाएँ
- एप्लिकेशन कनेक्शन स्ट्रिंग्स को नए डेटाबेस की ओर अपडेट करें।
चरण 5: अंतिम वैलिडेशन और परीक्षण करें
- महत्वपूर्ण एप्लिकेशन क्वेरीज़ का परीक्षण कर कार्यक्षमता की पुष्टि करें।
- सत्यापित करें कि नए ट्रांज़ैक्शंस टार्गेट सिस्टम में सही ढंग से प्रोसेस हो रहे हैं।
- एंड-टू-एंड परीक्षण चलाएँ ताकि व्यावसायिक प्रक्रियाएँ यथावत रहें।
चरण 6: पुराने सोर्स डेटाबेस को डीकमीशन करें (यदि आवश्यक हो)
- यदि अब इसकी आवश्यकता नहीं है, तो सोर्स डेटाबेस को आर्काइव या डीकमीशन किया जा सकता है।
- सोर्स सिस्टम को पूर्ण रूप से हटाने से पहले बैकअप रखें।
चरण 3: क्लीनअप और फ़ाइनलाइज़ेशन
चरण 1: माइग्रेशन टास्क रोकें और हटाएँ
- AWS DMS कंसोल खोलें।
- बाएँ मेनू में Database Migration Tasks पर क्लिक करें।
- आपके द्वारा बनाए गए माइग्रेशन टास्क चुनें।
- Actions > Stop पर क्लिक करें और पुष्टि करें।
- जब टास्क स्टेटस "Stopped" हो जाए, तो Actions > Delete पर क्लिक करें और पुष्टि करें।
चरण 2: DMS एंडपॉइंट्स हटाएँ
- AWS DMS कंसोल में, बाएँ मेनू में Endpoints पर क्लिक करें।
- ट्यूटोरियल के दौरान बनाए गए एंडपॉइंट्स चुनें।
- Actions > Delete पर क्लिक करें और पुष्टि करें।

आकृति 23 AWS DMS एंडपॉइंट्स डिलिशन।
चरण 3: CloudFormation स्टैक हटाएँ
- AWS CloudFormation Console खोलें।
- ट्यूटोरियल के दौरान बनाया गया CloudFormation स्टैक चुनें।
- ऊपर दाएँ कोने में Delete पर क्लिक करें।

आकृति 24 AWS में स्टैक डिलिशन की पुष्टि।
- डिलिशन की पुष्टि करें—CloudFormation स्वचालित रूप से सभी संबद्ध संसाधन हटा देगा (इसमें 15 मिनट तक लग सकते हैं)।
- CloudFormation कंसोल मॉनिटर करें ताकि सुनिश्चित हो कि स्टैक पूरी तरह हट गया है।
AWS DMS की उन्नत सुविधाएँ
अब, आइए कुछ अधिक जटिल परिदृश्यों पर नज़र डालें जिन्हें आप AWS DMS से हल कर सकते हैं।
माइग्रेशन के दौरान डेटा ट्रांसफ़ॉर्मेशन
AWS DMS, माइग्रेशन के दौरान डेटा ट्रांसफ़ॉर्मेशन की सुविधा देता है, जैसे कॉलम डेटा टाइप बदलना, तालिकाओं और कॉलम के नाम बदलना, और डेटा फ़िल्टर करना। ये ट्रांसफ़ॉर्मेशन सोर्स स्कीमा को टार्गेट डेटाबेस संरचना के अनुरूप बनाने में मदद करते हैं। Table Mappings सेक्शन में ट्रांसफ़ॉर्मेशन नियमों का उपयोग करके, आप इन बदलावों को सोर्स डेटाबेस में परिवर्तन किए बिना डायनेमिक रूप से लागू कर सकते हैं।
विस्तृत चरणों के लिए, इस बलॉग पोस्ट को देखें: transforming column content।
S3 को टार्गेट बनाकर AWS DMS का उपयोग
AWS DMS डेटा को Amazon S3 में माइग्रेट कर सकता है, जो एनालिटिक्स, मशीन लर्निंग या आगे की प्रोसेसिंग के लिए किफायती स्टोरेज सक्षम करता है जैसे सेवाओं का उपयोग करके AWS Glue, Athena, या Redshift।
AWS DMS माइग्रेशन के लिए Amazon S3 को टार्गेट डेस्टिनेशन के रूप में कॉन्फ़िगर करने के लिए ये चरण अपनाएँ।
चरण 1: S3 बकेट बनाएँ
- Amazon S3 कंसोल खोलें।
- Create bucket पर क्लिक करें।
- Bucket Name सेट करें:
dmstargetbucket-<random 4-digit number> - सुनिश्चित करें कि रीजन AWS DMS संसाधनों से मेल खाता हो।
- अन्य सभी सेटिंग्स डिफ़ॉल्ट रहने दें और Create bucket पर क्लिक करें।
चरण 2: S3 बकेट में फ़ोल्डर बनाएँ
- नए बनाए गए बकेट को खोलें।
- Create folder पर क्लिक करें।
- फ़ोल्डर का नाम रखें
dmstargetfolder। - सभी डिफ़ॉल्ट रहने दें और Create folder पर क्लिक करें।
चरण 3: S3 एक्सेस के लिए AWS IAM पॉलिसी बनाएँ
- IAM कंसोल खोलें और Policies पर जाएँ।
- Create policy पर क्लिक करें, फिर JSON टैब चुनें।
- निम्न पॉलिसी कॉपी-पेस्ट करें, और
"REPLACE-WITH-YOUR-BUCKET-NAME"को अपने वास्तविक बकेट नाम से बदलें:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:DeleteObject"
],
"Resource": [
"arn:aws:s3:::REPLACE-WITH-YOUR-BUCKET-NAME*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:ListBucket"
],
"Resource": [
"arn:aws:s3:::REPLACE-WITH-YOUR-BUCKET-NAME*"
]
}
]
}
- Review policy पर क्लिक करें।
- Policy Name को
DMS-tutorial-S3-Access-Policyसेट करें, फिर Create policy पर क्लिक करें।
चरण 4: पॉलिसी को IAM रोल से अटैच करें
- IAM कंसोल में, Roles पर जाएँ।
- “dms-vpc” खोजें और
dms-vpc-roleचुनें। - Add permissions > Attach policies पर क्लिक करें।

आकृति 25 AWS IAM पॉलिसी प्रबंधन।
DMS-LAB-S3-Access-Policyचुनें और Add permissions पर क्लिक करें।
चरण 5: IAM Role ARN सहेजें
dms-vpc-roleके सारांश पेज पर, Role ARN कॉपी करें।- AWS DMS कॉन्फ़िगरेशन में बाद में उपयोग के लिए इसे सहेज लें।
S3 टार्गेट एंडपॉइंट्स बनाना
अब जबकि S3 बकेट उपयुक्त पॉलिसीज़ और रोल्स के साथ कॉन्फ़िगर हो चुका है, अगला चरण AWS DMS में टार्गेट एंडपॉइंट्स बनाना है।
- AWS DMS कंसोल खोलें।
- बाएँ मेनू में Endpoints पर क्लिक करें।
- ऊपर दाएँ कोने में Create endpoint पर क्लिक करें।
- डेस्टिनेशन एंडपॉइंट S3 कॉन्फ़िगर करें।
- निम्न मान दर्ज करें:
- Endpoint Type: Target endpoint
- Endpoint Identifier: S3-target
- Descriptive ARN: खाली छोड़ें
- Target Engine: Amazon S3
- Server Name:
<ARN of the dms-vpc-role> - Bucket Name:
<Your S3 Bucket Name> - Bucket Folder:
dmstargetfolder - कनेक्शन सत्यापित करने के लिए Run Test पर क्लिक करें।
- टेस्ट “Successful” होने पर Create endpoint पर क्लिक करें।
DMS माइग्रेशन टास्क बनाना
चरण 1: माइग्रेशन टास्क बनाएँ
- AWS DMS कंसोल खोलें।
- बाएँ मेनू में Database migration tasks पर क्लिक करें।
- ऊपर दाएँ कोने में Create task पर क्लिक करें।
चरण 2: टास्क सेटिंग्स कॉन्फ़िगर करें
- Task Identifier:
source-to-AuroraMySQL-target - Replication Instance:
cfn-dmsreplication - Source Database Endpoint: अपना सोर्स डेटाबेस चुनें
- Target Database Endpoint:
cfn-auroramysqlinstance - Migration Type: मौजूदा डेटा माइग्रेट करें और चल रहे बदलावों को भी रिप्लिकेट करें
- CDC Stop Mode: कस्टम CDC स्टॉप मोड का उपयोग न करें
- Create Recovery Table on Target DB: अनचेक्ड
- Target Table Preparation Mode: कुछ न करें (डिफ़ॉल्ट नहीं)
- Stop Task After Full Load Completes: बंद न करें
- LOB Column Settings / Include LOB Columns in Replication: Limited LOB मोड
- Max LOB Size (KB): 32
- Data Validation: अनचेक्ड
- Enable CloudWatch Logs: चेक्ड
- Log Context: डिफ़ॉल्ट स्तर
- Batch-Optimized Apply: अनचेक्ड
चरण 3: टेबल मैपिंग्स कॉन्फ़िगर करें
- Table mappings सेक्शन को विस्तार दें।
- एडिटिंग मोड के रूप में Wizard चुनें।
- Add new selection rule पर क्लिक करें, फिर निम्न दर्ज करें:
- Schema:
DMS_SAMPLE% - Table Name:
% - Action: Include

आकृति 26 टेबल मैपिंग कॉन्फ़िगर करें
चरण 4: ट्रांसफ़ॉर्मेशन नियम कॉन्फ़िगर करें
- Transformation rules सेक्शन को विस्तार दें।
- Add new transformation rule पर क्लिक करें और निम्न नियम दर्ज करें:
- Rule 1:
- Target: Schema
- Schema Name:
DMS_SAMPLE - Action: छोटे अक्षरों में बदलें
- Rule 2:
- Target: Table
- Schema Name:
DMS_SAMPLE - Table Name:
% - Action: छोटे अक्षरों में बदलें
- Rule 3:
- Target: Column
- Schema Name:
DMS_SAMPLE - Table Name:
% - Action: छोटे अक्षरों में बदलें
चरण 5: माइग्रेशन टास्क फ़ाइनलाइज़ करें और शुरू करें
- Turn on premigration assessment को अनचेक करें (इस कार्यशाला के लिए आवश्यक नहीं)।
- सुनिश्चित करें कि Migration task startup configuration Start automatically on create पर सेट है।
- Create task पर क्लिक करें।
चरण 6: माइग्रेशन प्रगति मॉनिटर करें
- माइग्रेशन टास्क (
source-to-s3-target) पर क्लिक करें। - Table Statistics तक स्क्रॉल करें और मूव की गई पंक्तियों की संख्या देखें।
- यदि स्टेटस लाल (त्रुटि) हो जाए, तो ट्रबलशूटिंग के लिए View Logs पर क्लिक करें और CloudWatch लॉग्स का उपयोग करें।
AWS DMS के लिए सर्वोत्तम प्रथाएँ
अब, आइए देखें कि AWS DMS का उपयोग करके डेटा माइग्रेट करते समय किन सर्वोत्तम प्रथाओं को लागू करना चाहिए।
प्रदर्शन को बेहतर बनाएँ
AWS DMS का उपयोग करके कुशल और तेज़ डेटाबेस माइग्रेशन सुनिश्चित करने के लिए, निम्नलिखित अनुकूलन पर विचार करें:
- उपयुक्त रिप्लिकेशन इंस्टेंस आकार चुनें
- उच्च थ्रूपुट माइग्रेशन के लिए बड़े इंस्टेंस प्रकार (जैसे,
dms.r5.largeया उससे ऊपर) का उपयोग करें। - CloudWatch का उपयोग करके CPU, मेमोरी, और IOPS की निगरानी करें और आवश्यकता होने पर इंस्टेंस को स्केल करें।
- समानांतर प्रोसेसिंग के लिए एकाधिक माइग्रेशन टास्क का उपयोग करें
- बड़े माइग्रेशन को लोड समय कम करने के लिए टेबल समूहों के आधार पर कई टास्क में विभाजित करें।
- प्रदर्शन संतुलन के लिए बड़ी तालिकाओं को छोटी तालिकाओं से अलग माइग्रेट करें।
- नेटवर्क कनेक्शन का अनुकूलन करें
- DMS रिप्लिकेशन इंस्टेंस को स्रोत और लक्ष्य डेटाबेस के समान VPC और उपलब्धता क्षेत्र में रखें।
- बेहतर नेटवर्क स्थिरता और कम विलंबता के लिए VPC एंडपॉइंट्स या Direct Connect का उपयोग करें।
- LOB सेटिंग्स को ट्यून करें
- बड़े ऑब्जेक्ट्स (LOBs) के लिए, प्रदर्शन पर प्रभाव कम करने हेतु Limited LOB Mode का उपयोग करें और उपयुक्त LOB आकार निर्धारित करें।
- समानांतर लोड और बैच अप्लाई सक्षम करें
- लक्ष्य डेटाबेस में तेज़ इन्सर्ट के लिए Batch Optimized Apply चालू करें।
- बड़े पैमाने के माइग्रेशन के लिए Parallel Load का उपयोग करें ताकि एक साथ कई तालिकाओं को प्रोसेस किया जा सके।
डाउनटाइम की योजना बनाएँ
डेटाबेस माइग्रेशन के दौरान डाउनटाइम को कम करना व्यावसायिक निरंतरता बनाए रखने के लिए महत्वपूर्ण है। सुचारू कटओवर सुनिश्चित करने के लिए ये प्रमुख रणनीतियाँ अपनाएँ:
- कम ट्रैफ़िक की अवधि में माइग्रेट करें
- उपयोगकर्ताओं पर प्रभाव कम करने के लिए कटओवर को ऑफ-पीक घंटों में निर्धारित करें।
- अस्थायी व्यवधानों के लिए तैयारी करने हेतु हितधारकों को पहले से सूचित करें।
- चल रही प्रतिकृति (CDC) का उपयोग करें
- Change Data Capture (CDC) सक्षम करें ताकि लक्ष्य डेटाबेस स्रोत के साथ समकालिक बना रहे।
- इससे एप्लिकेशंस न्यूनतम डेटा हानि के साथ स्विचओवर कर सकती हैं।
- टेस्ट कटओवर करें
- अंतिम कटओवर से पहले स्टेजिंग वातावरण पर ट्रायल माइग्रेशन चलाएँ।
- प्रदर्शन का सत्यापन करें और किसी भी स्कीमा या डेटा असंगतियों को हल करें।
- DNS स्विच के प्रभाव को कम करें
- DNS-आधारित डेटाबेस कनेक्शन तैयार रखें ताकि नए लक्ष्य पर स्विच करना सहज हो।
- एप्लिकेशन कनेक्शन स्ट्रिंग्स को केवल तब अपडेट करें जब माइग्रेशन सत्यापित हो जाए।
- अंतिम कटओवर से पहले स्रोत को केवल-पठन (read-only) रखें
- स्रोत को read-only मोड में सेट करके नई लेनदेन को रोकें।
- एप्लिकेशंस को लक्ष्य पर इंगित करने से पहले सुनिश्चित करें कि सभी लंबित परिवर्तन प्रतिकृत हो चुके हों।
अपने डेटा को सुरक्षित रखें
माइग्रेशन के दौरान डेटा सुरक्षा, संवेदनशील जानकारी की रक्षा करने और अनुपालन आवश्यकताओं का पालन करने के लिए बेहद महत्वपूर्ण है।
- SSL/TLS के साथ ट्रांज़िट में डेटा को एन्क्रिप्ट करें
- इंटरसेप्शन को रोकने के लिए स्रोत और लक्ष्य डेटाबेस कनेक्शनों पर SSL/TLS सक्षम करें।
- अतिरिक्त सुरक्षा के लिए सर्टिफिकेट-आधारित प्रमाणीकरण का उपयोग करें।
- AWS IAM भूमिकाओं और नीतियों से एक्सेस सीमित करें
- DMS रिप्लिकेशन इंस्टेंस और एंडपॉइंट्स को न्यूनतम विशेषाधिकार वाली IAM भूमिकाएँ असाइन करें।
- विशिष्ट डेटाबेस, S3 बकेट्स और CloudWatch लॉग्स तक पहुँच सीमित करने के लिए IAM नीतियों का उपयोग करें।
- At-rest एन्क्रिप्शन सक्षम करें
- Amazon S3 या RDS डेटा को एन्क्रिप्ट करने के लिए AWS Key Management Service (KMS) का उपयोग करें।
- सुरक्षित भंडारण के लिए सुनिश्चित करें कि लक्ष्य डेटाबेस एन्क्रिप्शन का समर्थन करता हो।
AWS DMS का ट्रबलशूटिंग
DMS एक शक्तिशाली टूल है, लेकिन यह समस्याओं से मुक्त नहीं है। यहाँ बताया गया है कि सबसे आम समस्याओं का ट्रबलशूट कैसे करें।
आम त्रुटियाँ और समाधान
AWS DMS माइग्रेशन में डेटाबेस कनेक्टिविटी, स्कीमा मिसमैच और प्रतिकृति विफलताओं से संबंधित त्रुटियाँ आ सकती हैं।
1. डेटाबेस कनेक्शन त्रुटियाँ
- त्रुटि: "Failed to connect to database endpoint."
- समाधान:
- VPC, सिक्योरिटी ग्रुप्स और सबनेट सेटिंग्स की जाँच करें।
- जाँचें कि डेटाबेस DMS रिप्लिकेशन इंस्टेंस से एक्सेस किया जा सकता है या नहीं।
- DMS एंडपॉइंट सेटिंग्स में सही होस्ट, पोर्ट और क्रेडेंशियल्स सुनिश्चित करें।
- DMS कंसोल में "Test Endpoint Connection" विकल्प का उपयोग करके कनेक्टिविटी जाँचें।
2. डेटा टाइप संगतता समस्याएँ
- त्रुटि: "Unsupported data type conversion between source and target."
- समाधान:
- असंगत डेटा टाइप्स की पहचान करने के लिए AWS Schema Conversion Tool (SCT) का उपयोग करें।
- आवश्यक होने पर लक्ष्य स्कीमा में कॉलम डेटा टाइप्स को मैन्युअली संशोधित करें।
- असंगत टाइप्स को स्वचालित रूप से कन्वर्ट करने के लिए DMS में ट्रांसफॉर्मेशन नियम सक्षम करें।
3. फॉरेन की_constraint उल्लंघन
- त्रुटि: "Foreign key constraint violation in target database."
- समाधान:
- माइग्रेशन से पहले फॉरेन की_constraints अक्षम करें और पूरा होने के बाद फिर से सक्षम करें।
- यदि मौजूदा तालिका में डेटा को फिर से लोड कर रहे हैं, तो "Truncate before load" का उपयोग करें।
4. धीमा माइग्रेशन प्रदर्शन
- त्रुटि: "Replication lag increasing significantly."
- समाधान:
- बड़ा DMS रिप्लिकेशन इंस्टेंस (
dms.r5.largeया उससे ऊपर) उपयोग करें। - तेज़ इनजेशन के लिए Parallel Load और Batch Optimized Apply सक्षम करें।
- DMS, स्रोत और लक्ष्य को एक ही VPC में रखकर नेटवर्क कनेक्शन को अनुकूलित करें।
5. चल रही प्रतिकृति (CDC) का अप्रत्याशित रूप से रुकना
- त्रुटि: "CDC task stopped due to missing log files."
- समाधान:
- स्रोत डेटाबेस पर पर्याप्त लॉग रिटेंशन सुनिश्चित करें (जैसे, Oracle LogMiner के लिए 24 घंटे)।
- CDC कार्य को अंतिम लागू लेनदेन से पुनः प्रारंभ करें।
ट्रबलशूटिंग के लिए DMS लॉग्स का उपयोग
AWS DMS, कार्य लॉग्स और CloudWatch एकीकरण प्रदान करता है जिससे माइग्रेशन समस्याओं की पहचान और समाधान कुशलतापूर्वक किया जा सके।
1. DMS टास्क लॉग्स तक पहुँचना
- AWS DMS कंसोल में, Database Migration Tasks पर जाएँ।
- समस्या का सामना कर रहे माइग्रेशन टास्क का चयन करें।
- त्रुटि संदेश और निष्पादन विवरण देखने के लिए Monitoring पर क्लिक करें।

चित्र 27 AWS CloudWatch लॉग्स, माइग्रेशन त्रुटियों के साथ
2. विस्तृत डिबगिंग के लिए AWS CloudWatch का उपयोग
- यहाँ जाएँ: AWS CloudWatch Console > Logs।
- यह ढूँढें: DMS replication instance log group (
/aws/dms/replication-instance-ID)। - अधिक विवरण कैप्चर करने के लिए DMS task settings में verbose logging सक्षम करें।

चित्र 28 AWS CloudWatch ईवेंट्स ओवरव्यू
निष्कर्ष
AWS Database Migration Service (DMS) विभिन्न डेटाबेस इंजनों के बीच न्यूनतम डाउनटाइम के साथ डेटा को स्थानांतरित करना आसान बनाता है। सर्वोत्तम प्रथाओं—जैसे प्रदर्शन का अनुकूलन, डेटा को सुरक्षित रखना, स्कीमा परिवर्तनों का प्रबंधन, और आम समस्याओं का ट्रबलशूटिंग—का पालन करके, आप एक सुचारू माइग्रेशन प्रक्रिया सुनिश्चित कर सकते हैं।
Ab जब आपने एंड-टू-एंड AWS DMS माइग्रेशन पूरा कर लिया है, तो आप बेहतर स्केलेबिलिटी, एनालिटिक्स, और क्लाउड-नेटिव ऑप्टिमाइज़ेशन के लिए अपने नए क्लाउड-आधारित डेटाबेस का पूरा लाभ उठाने के लिए तैयार हैं। यदि आप अपनी AWS जानकारी को और गहरा करना चाहते हैं, तो AWS Cloud Practitioner Certification ट्रैक देखें या AWS Concepts और AWS Security & Cost Management से शुरुआत करें।
राहुल शर्मा AWS एंबेसडर, DevOps आर्किटेक्ट, और तकनीकी ब्लॉगर हैं, जो क्लाउड कंप्यूटिंग, DevOps प्रथाओं और ओपन‑सोर्स तकनीकों में विशेषज्ञता रखते हैं। AWS, Kubernetes, और Terraform में उनकी विशेषज्ञता के साथ, वे रोचक लेखों और ट्यूटोरियल्स के माध्यम से जटिल अवधारणाओं को सीखने वालों और पेशेवरों के लिए सरल बनाते हैं। राहुल DevOps से जुड़ी चुनौतियों को सुलझाने और तकनीकी समुदाय को सशक्त बनाने के लिए अपनी अंतर्दृष्टियाँ साझा करने के प्रति उत्साही हैं।

जैसे-जैसे संगठन क्लाउड तकनीक के माध्यम से अपने इंफ्रास्ट्रक्चर का आधुनिकीकरण करते हैं, डेटाबेस को AWS में माइग्रेट करना महत्वपूर्ण हो जाता है। AWS एक सशक्त माइग्रेशन टूल प्रदान करता है—AWS Database Migration Service (DMS)—जो ऑन-प्रिमाइसेस डेटाबेस, स्वयं-प्रबंधित क्लाउड डेटाबेस, और अन्य AWS सेवाओं से कम जोखिम और लगभग त्वरित माइग्रेशन सक्षम करता है।
इस ट्यूटोरियल में, आप अपनी डेटाबेस माइग्रेशन आवश्यकताओं के लिए AWS DMS को सेट अप और उपयोग करना सीखेंगे। आप जानेंगे:
चलिए शुरू करते हैं!
AWS DMS क्या है?
AWS Database Migration Service (DMS) बिना डाउनटाइम के AWS में डेटाबेस माइग्रेट करना आसान बनाता है। यह समरूप और विषम दोनों प्रकार के माइग्रेशन प्रदान करता है, जैसे MySQL से MySQL या Oracle से PostgreSQL—जो क्लाउड पर जाने वाले संगठनों के लिए इसे एक महत्वपूर्ण टूल बनाता है।
AWS DMS के साथ, आप:
AWS DMS का व्यापक उपयोग इन कार्यों के लिए होता है:
AWS DMS की विशेषताएँ
डेटाबेस माइग्रेशन को समर्थन देने के लिए AWS DMS कई महत्वपूर्ण फीचर्स प्रदान करता है:
1. समरूप और विषम माइग्रेशन
2. Change Data Capture (CDC) के साथ न्यूनतम डाउनटाइम
3. पूर्णतः प्रबंधित और स्केलेबल
4. व्यापक डेटाबेस संगतता
5. AWS SCT के साथ स्कीमा रूपांतरण
6. सतत मॉनिटरिंग और लॉगिंग
7. सुरक्षा और अनुपालन