यह ब्लॉग डेटाबेस कॉन्फ़िगरेशन असिस्टेंट (DBCA) का उपयोग करने के तरीकों का परिचय देता है, जो Oracle 19c में एक नई सुविधा है, एक रिमोट प्लगेबल डेटाबेस (PDB) को एक कंटेनर डेटाबेस (CDB) में क्लोन करने के लिए बिना स्रोत डेटाबेस का बैकअप लिए।
स्रोत से लक्ष्य तक क्लोन करने में न्यूनतम समय लगता है।
स्रोत DB विवरण
CDB: LCONCDB PDB: LCON
निम्नलिखित स्रोत में प्रत्येक कंटेनर (CDB और PDB) के तहत DBF फ़ाइलों की कुल संख्या है, जिसे लक्ष्य में क्लोन होने के बाद मान्य करने की आवश्यकता है। उपरोक्त स्रोत DB से, आप लक्ष्य होस्ट में CDB और PDB बनाएंगे।
लक्ष्य DB विवरण
CDB: - KCONCDB PDB: - KCON
पूर्व-चरण जिन्हें पूरा करने की आवश्यकता है:-
- लक्ष्य होस्ट में Oracle डेटाबेस 19c इंस्टॉल करें, या आप स्रोत से RDBMS19c टार बना सकते हैं और लक्ष्य नोड में अनटार कर सकते हैं। या आप स्रोत से लक्ष्य तक rsync कमांड का उपयोग करके RDBMS को स्रोत के समान बना सकते हैं।
- perl adclonectx.pl चलाने के लिए xml फ़ाइल बनाएं और विवरण प्रदान करें। 19c RDBMS इंस्टॉल/बनाने के बाद, आपको लक्ष्य DB नोड के लिए कॉन्टेक्स्ट फ़ाइल बनाने की आवश्यकता है। लक्ष्य DB नोड में कॉन्टेक्स्ट फ़ाइल बनाने के लिए निम्न कमांड है।
`[oraki@nglusnj bin]$ perl adclonectx.pl \
contextfile=/u02/oracle/KCON/product/19.3/appsutil/NYAPP_nglusnj.xml Copyright (c) 2011, 2015 Oracle Corporation Redwood Shores, California, USA
Oracle E-Business Suite Rapid Clone Version 12.2 adclonectx Version 120.30.12020000.22`
Running: /u02/oracle/KCON/product/19.3/appsutil/clone/bin/../jre/bin/java -Xmx600M -Doracle.jdbc.autoCommitSpecCompliant=false -classpath /u02/oracle/KCON/product/19.3/appsutil/clone/bin/../jlib/ojdbc8.jar:/u02/oracle/KCON/product/19.3/appsutil/clone/bin/../jlib/xmlparserv2.jar:/u02/oracle/KCON/product/19.3/appsutil/clone/bin/../jlib/java: oracle.apps.ad.context.CloneContext -e /u02/oracle/KCON/product/19.3/appsutil/NYAPP_nglusnj.xml -tmpl /u02/oracle/KCON/product/19.3/appsutil/clone/bin/../context/db/adxdbctx.tmp
APPS पासवर्ड दर्ज करें :
Log file located at /u02/oracle/KCON/product/19.3/appsutil/clone/bin/CloneContext_0227034250.log
नए डेटाबेस कॉन्टेक्स्ट फ़ाइल के निर्माण के लिए आवश्यक मान प्रदान करें।
Target System Hostname (virtual or normal) [nglusnj] : nglusnj
यह अनुशंसा की जाती है कि आपके इनपुट प्रोग्राम द्वारा मान्य किए जाएं। हालांकि, आप निम्नलिखित परिस्थितियों में उन्हें मान्य नहीं करना चुन सकते हैं:
-यदि किसी दूरस्थ सिस्टम के लिए स्रोत सिस्टम पर एक कॉन्टेक्स्ट क्लोन कर रहे हैं।
-यदि किसी मशीन पर कॉन्टेक्स्ट क्लोन कर रहे हैं जहां पोर्ट लिए गए हैं और आप इस बिंदु पर सेवाओं को बंद नहीं करना चाहते हैं।
-यदि कॉन्टेक्स्ट क्लोन कर रहे हैं लेकिन डेटाबेस जिससे इसे कनेक्ट करने की आवश्यकता है वह उपलब्ध नहीं है।
Do you want the inputs to be validated (y/n) [n] ? : n
Target System Base Directory : /u02/oracle/KCON
Target Instance is RAC (y/n) [n] :
Target System CDB Name : KCONCDB
Target System PDB Name : KCON
Oracle OS User [oraki] :
Oracle OS Group [dba] :
Role separation is supported y/n [n] ? : n
Number of DATA_TOP's on the Target System [2] :
Target System DATA_TOP Directory 1 [/u02/oracle/KCON/NYAPPCDB] : /u02/oracle/KCON/KCONCDB
Target System DATA_TOP Directory 2 [/u02/oracle/KCON/data] :
Specify value for OSBACKUPDBA group [dba] :
Specify value for OSDGDBA group [dba] :
Specify value for OSKMDBA group [dba] :
Specify value for OSRACDBA group [dba] :
Target System RDBMS ORACLE_HOME Directory [/u02/oracle/KCON/19.0.0] : /u02/oracle/KCON/product/19.3
Do you want to preserve the Display [nglusnj:0.0] (y/n) : y
Target System Port Pool [0-99] : 20 Report file located at /u02/oracle/KCON/product/19.3/appsutil/temp/portpool.lst
New context path and file name [/u02/oracle/KCON/product/19.3/appsutil/KCON_nglusnj.xml] : /u02/oracle/KCON/product/19.3/appsutil/KCON_nglusnj.xml file already exists.
Do you want to overwrite it (y/n) [n] ? : y Replacing /u02/oracle/KCON/product/19.3/appsutil/KCON_nglusnj.xml file. The new database context file has been created : /u02/oracle/KCON/product/19.3/appsutil/KCON_nglusnj.xml contextfile=/u02/oracle/KCON/product/19.3/appsutil/KCON_nglusnj.xml Check Clone Context logfile /u02/oracle/KCON/product/19.3/appsutil/clone/bin/CloneContext_0227034250.log for details. [oraki@nglusnj bin]$ perl
- एक बार जब आप लक्ष्य DB नोड में कॉन्टेक्स्ट फ़ाइल बना लेते हैं, तो आपको लक्ष्य DB नोड में adcfgclone चलाने के लिए 19C RDBMS कॉन्फ़िगर करने और ऊपर बनाई गई कॉन्टेक्स्ट फ़ाइल पास करने की आवश्यकता है। निम्न उदाहरण कमांड चलाने के चरणों को कवर करता है।
[oraki@nglusnj bin]$ perl adcfgclone.pl dbTechStack /u02/oracle/KCON/product/19.3/appsutil/KCON_nglusnj.xml
Copyright (c) 2002, 2015 Oracle Corporation Redwood Shores, California, USA
Oracle E-Business Suite Rapid Clone Version 12.2 adcfgclone Version 120.63.12020000.65
APPS पासवर्ड दर्ज करें :
Running Rapid Clone with command:
Running: perl /u02/oracle/KCON/product/19.3/appsutil/clone/bin/adclone.pl java=/u02/oracle/KCON/product/19.3/appsutil/clone/bin/../jre mode=apply stage=/u02/oracle/KCON/product/19.3/appsutil/clone component=dbTechStack method=CUSTOM dbctxtg=/u02/oracle/KCON/product/19.3/appsutil/KCON_nglusnj.xml showProgress contextValidated=false
Beginning rdbms home Apply - Sat Feb 27 04:25:16 2021
/u02/oracle/KCON/product/19.3/appsutil/clone/bin/../jre/bin/java -Xmx600M -Doracle.jdbc.autoCommitSpecCompliant=false -DCONTEXT_VALIDATED=false -Doracle.installer.oui_loc=/u02/oracle/KCON/product/19.3/oui -classpath /u02/oracle/KCON/product/19.3/appsutil/clone/jlib/xmlparserv2.jar:/u02/oracle/KCON/product/19.3/appsutil/clone/jlib/ojdbc8.jar:/u02/oracle/KCON/product/19.3/appsutil/clone/jlib/java:/u02/oracle/KCON/product/19.3/appsutil/clone/jlib/oui/OraInstaller.jar:/u02/oracle/KCON/product/19.3/appsutil/clone/jlib/oui/ewt3.jar:/u02/oracle/KCON/product/19.3/appsutil/clone/jlib/oui/share.jar:/u02/oracle/KCON/product/19.3/appsutil/clone/jlib/oui/srvm.jar:/u02/oracle/KCON/product/19.3/appsutil/clone/jlib/ojmisc.jar oracle.apps.ad.clone.ApplyDBTechStack -e /u02/oracle/KCON/product/19.3/appsutil/KCON_nglusnj.xml -stage /u02/oracle/KCON/product/19.3/appsutil/clone -showProgress APPS Password : Log file located at /u02/oracle/KCON/product/19.3/appsutil/log/KCON_nglusnj/ApplyDBTechStack_02270425.log | 0% completed
Log file located at /u02/oracle/KCON/product/19.3/appsutil/log/KCON_nglusnj/ApplyDBTechStack_02270425.log
0% completed
Completed Apply...
- स्रोत CDB के साथ PDB आर्काइव लॉग मोड में होना चाहिए।
आपको यह सुनिश्चित करने की आवश्यकता है कि स्रोत DB आर्काइव लॉग मोड में है।
- लक्ष्य नोड पर DBCA कमांड चलाएं ताकि CDB और PDB VNC में क्लोन हो जाएं।
SYNTAX:
./dbca -silent -createDuplicateDB -gdbName {CLONE_DB_NAME} -primaryDBConnectionString <hostname:port/service> -sid {CLONE_DB_SID} -databaseConfigType SINGLE -initParams db_unique_name={CLONE_DB_NAME} -sysPassword {PRIMARY_DB_SYS_PWD} -datafileDestination {CLONE_DATAFILE_LOC}
[oraki@nglusnj ~]$ dbca -silent -createDuplicateDB -gdbName KCONCDB -sid KCONCDB -primaryDBConnectionString nglusnj:1551/LCONCDB -databaseConfigType SI -initParams db_unique_name=KCONCDB -sysPassword LCON5yspwd! -datafileDestination /u02/oracle/KCON/product/oradata/KCONCDB
*-gdbName = लक्ष्य ग्लोबल डेटाबेस नाम। *-sid= लक्ष्य sid नाम *-primaryDBConnectionString = स्रोत कनेक्शन स्ट्रिंग.. *-databaseConfigType = SI का अर्थ सिंगल इंस्टेंस *-initParams db_unique_name = लक्ष्य db अद्वितीय नाम *-sysPassword = sys उपयोगकर्ता पासवर्ड। *-datafileDestination = लक्ष्य में dbf फ़ाइल स्थान।
अब CDB और PDB दोनों बन गए हैं। 6. PDB का नाम बदलें क्योंकि PDB का नाम स्रोत DB नाम के समान है। निम्न चरण आपको PDB का नाम बदलने में मदद करेंगे।
SQL> alter session set container=LCON;
Session altered.
SQL> shutdown immediate; Pluggable Database closed. SQL> startup open restrict; Pluggable Database opened. SQL> alter pluggable database LCON rename global_name to KCON;
Pluggable database altered.
SQL> shutdown immediate; Pluggable Database closed. SQL> alter database open;
Database altered.
इसके साथ क्लोनिंग पूरा हो गया है। आपको स्रोत से DBF फ़ाइल को मान्य और मिलान करने की आवश्यकता है। DBF फ़ाइल की संख्या समान होनी चाहिए।
निष्कर्ष
DBCA का उपयोग करके PDBs क्लोन करना, Oracle 19c में साइलेंट मोड में एक नई सुविधा, डेटाबेस को न्यूनतम समय में क्लोन करने का सबसे सरल तरीका है। आपको स्रोत डेटाबेस का बैकअप लेने और क्लोनिंग के लिए उन बैकअप टुकड़ों को लक्ष्य होस्ट पर कॉपी करने की आवश्यकता नहीं है जो समय बचाने में भी मदद करता है।
कोई टिप्पणी करने या प्रश्न पूछने के लिए फीडबैक टैब का उपयोग करें। आप हमसे बातचीत भी शुरू कर सकते हैं।