ओरेकल डीएमपी फ़ाइल को ओरेकल की एक ताज़ा स्थापना में आयात करें


29

एक ग्राहक ने हमें एक ओरेकल डेटाबेस भेजा जिसके खिलाफ हमें परीक्षण करने की आवश्यकता है। हम Oracle का उपयोग नहीं करते हैं या कोई भी इन-हाउस Oracle विशेषज्ञता नहीं है।

हमें डेटाबेस सेटअप करने की आवश्यकता है ताकि हम इसे कनेक्ट कर सकें और किसी समस्या को डीबग कर सकें।

मैंने ओरेकल 9 (क्लाइंट चला रहे संस्करण) और प्रबंधन टूल की एक ताजा स्थापना की।

मेरे जीवन के लिए, मुझे यह डेटा आयात करने के लिए नहीं मिल सकता है। यह यह जटिल नहीं होना चाहिए। मुझे कुछ गलत हो रहा होगा।

मैंने कोशिश की:

imp 'sys/password AS SYSDBA' file=c:\database.dmp full=yes log=implog.txt

और पा लिया:

Connected to: Personal Oracle9i Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production

Export file created by EXPORT:V09.02.00 via conventional path

Warning: the objects were exported by SYSTEM, not by you

import done in WE8MSWIN1252 character set and AL16UTF16 NCHAR character set
. importing SYSTEM's objects into SYS
. importing ABCDE's objects into ABCDE
IMP-00003: ORACLE error 1435 encountered
ORA-01435: user does not exist
Import terminated successfully with warnings.

लेकिन प्रबंधक के रूप में अभी तक किसी भी स्कीमा में तालिकाओं के बारे में कुछ भी नहीं दिखाया गया है और मैं अपने बुद्धिमत्ता के अंत में हूं।


धन्यवाद, सटीक समस्या यहाँ। एक ओरेकल डंप मिला और हमें आयात करना होगा। बहुत अच्छी तरह से किसी भी अन्य डेटाबेस प्रणाली
namezero

जवाबों:


28

आपको पहले एक उपयोगकर्ता (या स्कीमा) बनाना होगा

C:\>sqlplus system/password

SQL> create user CLIENT_TEST identified by client_test_password;
SQL> grant connect, unlimited tablespace, resource to CLIENT_TEST;
SQL> exit

तब आप नए उपयोगकर्ता / स्कीमा में डेटा आयात करने के लिए fromuser=और touser=IMP स्विच का उपयोग कर सकते हैं :

C:\>imp system/password FROMUSER=ABCDE TOUSER=client_test file=c:\database.dmp full=yes

उम्मीद है की वो मदद करदे!


ORA-65096: अमान्य सामान्य उपयोगकर्ता या भूमिका नाम
Kvasi

12

ओरेकल में SYS या सिस्टम के रूप में टेबल बनाना आम नहीं है, क्योंकि वे दो खाते प्रशासक हैं।

त्रुटि का अर्थ है कि आपके क्लाइंट ने उपयोगकर्ता के रूप में टेबल बनाए हैं ABCDE

आपको आयात करने से पहले उस उपयोगकर्ता को बनाना चाहिए, फिर आपको उस उपयोगकर्ता के रूप में डेटा आयात करना चाहिए,

यह त्रुटि को समाप्त करना चाहिए क्योंकि निर्यात की गई फ़ाइल में उपयोगकर्ता से संबंधित अनुमतियां और अन्य informations शामिल ABCDEहैं जो डेटाबेस में मौजूद नहीं हैं।

अतिरिक्त संकेत के लिए इस प्रश्न की जांच करें: ओरेकल डेटा पंप एक्सपोर्ट फ़ाइल के अंदर स्कीमाओं का निर्धारण कैसे करें।


7

आपको पहले उपयोगकर्ता "ABCDE" बनाने की आवश्यकता है

कुछ इस तरह

SQL * PLUS में:

create user ABCDE identified by password;
grant connect, resource to ABCDE;

"उपयोगकर्ता बनाएँ" पर एक स्किलियन विकल्प है, लेकिन यह चूक का उपयोग करेगा।


3

क्या क्लाइंट ने यह विवरण प्रदान किया कि उन्होंने डंप फ़ाइल कैसे बनाई? विशेष रूप से, क्या आप निश्चित हैं कि यह एक स्कीमा स्तर के निर्यात, एक टेबल-स्तर के निर्यात या एक टेबल-स्तरीय निर्यात के बजाय एक पूर्ण निर्यात है?


मेरा एक संबंधित प्रश्न है। क्या आप इस पर टिप्पणी करने को तैयार हैं? : यहाँ लिंक है dba.stackexchange.com/questions/130515/...
CodeMed

3

BA sys / password AS SYSDBA ’के बजाय, password सिस्टम / पासवर्ड’ आज़माएँ।

ओरेकल के उपकरण को उसी उपयोगकर्ता को आयात करने की आवश्यकता होती है क्योंकि निर्यात "भले ही शक्तिशाली" उपयोगकर्ता हो।


1

चेतावनी दी गई थी कि जो डेटा आप आयात कर रहे हैं, वह वास्तव में SYS उपयोगकर्ता द्वारा .dmo फ़ाइल के रूप में निर्यात किया गया था। इसे इस्तेमाल करे..

C:\oracle\ora92\bin>imp sys/pwd@dbname file=c:\database.dmp full=yes

dbname डेटाबेस का नाम है जो आपने प्रदान किया है


0
c:\\ imp database name/password@oracle9i file=xyz,dmp grants=n ignore=y 
  fromuser=database name touser=database name

1
आपको अपना जवाब स्पष्ट करके बताना चाहिए कि यह कैसे काम करता है, पैरामीटर क्या हैं, कुछ भी वास्तव में केवल एक कमांड-लाइन से परे है।
मैक्स वर्नोन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.