Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have moved a database from a 32bit version of Oracle 11g under Linux to a 64 bit environment. However, i have experienced problems in the new Environment (also Linux).

Is there any method of upgrading the database to 64bits

One thing i forgot to mention the databse was upgraded from an earlier version, the original and the upgraded version were 32bit.

share|improve this question
add comment

3 Answers

If you have enough disk space, the easiest thing to do is install a fresh instance of Oracle 11g 64 bit, export your 32 bit data, then import into 64 bit Oracle. This will also allow you to have both running side by side for a little to verify that both instances are identical and working as expected.

share|improve this answer
add comment

Basically it should be: export schema, upgrade, import schema. Could you elaborate on the problems you've been having?

share|improve this answer
    
When trying cetain statements I was getting errors, for example trying to unlock an account i got an error from a package. –  OilyRag Jun 21 '09 at 21:39
add comment
up vote 0 down vote accepted

After some trial and error i found that the following resolved most of the problems i was expeiencing

#Shutdown and restart instance in upgrade mode.
Shutdown immediate;
Startup upgrade;

#now invalidate the existing packages 
@$ORACLE_HOME/rdbms/admin/utlirp.sql

#As i have already patched the system to DST V10 i needed to do the following
@$ORACLE_HOME/rdbms/admin/utlu111i.sql

#now i started to convert/upgrade the database, i started with the upgrade catalog 
# as it resolve a lot of issues i experienced.

@$ORACLE_HOME/rdbms/admin/catupgrd.sql

#Then the more standard catalog procs were applied.
@$ORACLE_HOME/rdbms/admin/catalog.sql
@$ORACLE_HOME/rdbms/admin/catproc.sql

#Finally, get all of the procs recompiled.
@$ORACLE_HOME/rdbms/admin/utlrp.sql

shutdown immediate;
startup;

#then check for any outstanding issues

select * from sys_objects where Status != 'VALID';

Now i did have a few invalid objects but these are application specific and fairly easy to resolve.

I haven't experienced any more issues with the conversion. However, if there are any ommissions or other issues with this approach i will be glad to hear about it.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.