views:

19835

answers:

5

A client sent us a oracle database we need to test against. We don't use oracle or have any oracle expertise in house.

We need to setup the database so we can connect to it and debug a problem.

I did a fresh install of oracle 9 (the version the client is running) and the management tools.

I cannot for the life of me get it to import the data. It cannot be this complicated. I must be getting something wrong.

I've tried:

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

and got:

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.

But nothing shows up in the manager as far as tables in any schema and I'm at my wits end.

+2  A: 

Did the client provide the details of how they generated the dump file? In particular, are you certain that this is a full export rather than a schema-level export, a tablespace-level export, or a table-level export?

Justin Cave
+3  A: 

It is not common to create tables as SYS or SYSTEM in Oracle, as those two accounts are administrators.

Error means that your client created tables as user ABCDE.

You should create that user before import, then you should import data as that user,

This should eliminate the error because exported file contains permissions and other informations related to user ABCDE that does not exist in database.

Check this question for additional hints: How to determine the Schemas inside an Oracle Data Pump Export file.

zendar
+2  A: 

You first need to create user "ABCDE"

Something like

In SQL*PLUS:

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

There's a squillion options on "create user" but this would use the defaults.

Nick Pierpoint
+1  A: 

Rather than 'sys/password AS SYSDBA', try 'system/password'.

Oracle's tool requires the same user to import as created the export even though sys is the "all powerful" user.

dacracot
+2  A: 

You'll need to create a user (or Schema) first

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

Then you can use the fromuser= and touser= IMP switches to import the data into the new user/schema:

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

Hope that helps!

Andrew