Title: Migrating From Informix To Oracle
Description: Migrating from Informix to Oracle
rowens06 - September 18, 2007 08:44 PM (GMT)
We are beginning a migration from Informix to Oracle and are interested in any comments from anyone who has done this type of migration. Our initial plan is not to use the Lawson migration tools (have heard that there are possible issues), but to do a standard RDBMS migration and then connect the Lawson application to the migrated database.
If anyone has any experience doing this and can provide pointers that would be great.
schroncd - September 18, 2007 09:30 PM (GMT)
I've done several using the basic Lawson tools without any issues - that is, of course, assuming you haven't mucked up the tables with a lot of triggers, etc.. - Lawson doesn't use them and the tools know nothing about them. The process is very simple - although quite lengthy, and not quite as entertaining as watching paint dry...
If you can do the migration with some Oracle utilities please do - and report on your outcome, but be aware that you may have to fall back to the Lawson toolset if things don't work.
g'luck!!
area51 - September 18, 2007 09:41 PM (GMT)
What are you on? i.e. Environment, Apps, how much data, modules?
In either case you still need to create a second product line. And the reason for this is that it's the best way to get the "appropriate" schema to right the RDBMS. It's been a while so I might have forgotten how to do this, but here are the steps as best as I can recall(this stuff is in the knowledge base search for copying productlines):
1) Create your oracle database
2) Create tablespaces, i.e. data and index
3) Create an id for lawson and assign it to the tablespaces
4) sysdump -e currentprodline currentprodline.dmpfile
5) sysload -efp currentprodline.dmpfile newprodline
6) Edit your ORACLE file in the newprodline directory
7) Assign rights to the Lawson id in Oracle by the running the rights script in $GENDIR
8 ) dbdef
a) create the oracle space definition for your product line
B) map the database space to your product line
9) blddbdict newprodline
10) now this part is a little hazy, either you can do "dbreorg newprodline" and it should create the schema in oracle or run dbcreate.
The reason you want Lawson to create the schema is because there are most likely major differences in the way Informix and Oracle handle certain data, i.e. dates, etc. If you are version 8+ you should be able to use DBCOPY to copy and convert the data to new version. I would say definitely goes this route as copying data from Informix to Oracle via RDBMS tools will most likely produce corrupted data.
If you don't want to use DBCOPY and your data is all together minimal, i.e. less than 2gb then you can use expsysdb to export all the data and then impexp to import the data. If it is greater the 2gb then it gets harder as you would have to export individual tables and import them -- this is why DBCOPY comes in handy.
Even after you did this -- you face another hurdle and that is pointing your original product line to the ORACLE database. I'm not sure if you can simply change the ORACLE file and modify the DBDEF settings.
Hopefully you have test system to test this all out.
schroncd - September 19, 2007 05:21 AM (GMT)
I don't do the second productline. Just create the Oracle instance, add the dbspaces in dbdef, fill in the ORACLE file, run blddbdict, dbreorg -lc (just to check that things are set up right), then dbreorg - and wait... and wait.... and wait... :whip:
rowens06 - September 19, 2007 01:34 PM (GMT)
We are running Lawson 8.0.3 on AIX 5.3 with approx. 30GB data and will be migrating to Oracle 10G. We will be migrating the HR and Accounting modules first. What document have you found to be the best for identifying the sequence of steps to follow?
area51 - September 19, 2007 02:33 PM (GMT)
| QUOTE (schroncd @ Sep 18 2007, 09:21 PM) |
| I don't do the second productline. Just create the Oracle instance, add the dbspaces in dbdef, fill in the ORACLE file, run blddbdict, dbreorg -lc (just to check that things are set up right), then dbreorg - and wait... and wait.... and wait... :whip: |
Well that would certainly get around the having to worry about the original product line.
:P
Is 'dbcopy' faster though?
Maybe another way to do it combined with you said in order to speed things up is:
1) still do to the second product line
2) dbcopy -- if it's faster,
3) back up all the data in the informix db
4) truncate the data in the informix tables
5) then do the dbdef and blddbdict in the original product line
6) point the original product line to the second oracle db
The only reason for these extra steps is the that dbreorg can be so slow with huge tables and if dbcopy is faster then the this method.