![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
#3
| |||
| |||
|
#4
| |||
| |||
|
|
I need to upgrade a v 9.2 database on AIX to v 11.2 on RHEL5 with minimal down time and I'm looking for suggestions. The DB is also being physically relocated about 1000 miles away. The database has two application schemas, both of which use LOBS and the total bytes is about 60g. I've tried using exp/imp (datapump isn't an option because of v9 at the source) but it takes about 36 hours to import which is too long. My next thought is to use streams to keep the DBs in sync, and then just switch over to the new DB. I've never used streams though and am unfamiliar with it. Is this a viable option? How do I instantiate the 11.2 db? Can I use exp/imp and some how tell the v9 DB at what point to begin sending changes to the new DB? Will the streams queue be able to queue all of the messages that might be created during the 36+ hours it takes to copy the export file to the v11 db? Is there a way in v9 to tell it what SCN or time to begin queuing at? Materialized views is another option I've thought about but from what I've read, streams seems to be suited to this sort of thing. TIA |
#5
| |||
| |||
|
|
You should consider standby or GoldenGate. Standby doesn't require spending any money. You copy your prod DB to the new site, open it as a standby, copy archived redo from prod and apply it. When the standby has caught up with prod and you're ready to cut over, you shut down prod and open the standby. The outage for the cutover can be extremely short; how short depends on how fast you can copy archived redo and apply it. You'll need to spend some time with the manuals to work out how to do it, though there are step-by-step tutorials on the web that will get you started. GoldenGate does much the same thing, and I believe that it requires far less effort to get working. The downside is that (a) you need to pay for it, and (b) it doesn't copy certain things, which means that your copy DB might not be exactly the same as your prod. For that reason, you'll need to figure out whether you can use it. Again, time must be spent with the manuals. |
#6
| |||
| |||
|
|
I need to upgrade a v 9.2 database on AIX to v 11.2 on RHEL5 with minimal down time and I'm looking for suggestions. The DB is also being physically relocated about 1000 miles away. The database has two application schemas, both of which use LOBS and the total bytes is about 60g. I've tried using exp/imp (datapump isn't an option because of v9 at the source) but it takes about 36 hours to import which is too long. My next thought is to use streams to keep the DBs in sync, and then just switch over to the new DB. I've never used streams though and am unfamiliar with it. Is this a viable option? How do I instantiate the 11.2 db? Can I use exp/imp and some how tell the v9 DB at what point to begin sending changes to the new DB? Will the streams queue be able to queue all of the messages that might be created during the 36+ hours it takes to copy the export file to the v11 db? Is there a way in v9 to tell it what SCN or time to begin queuing at? Materialized views is another option I've thought about but from what I've read, streams seems to be suited to this sort of thing. TIA |
#7
| |||
| |||
|
|
I need to upgrade a v 9.2 database on AIX to v 11.2 on RHEL5 with minimal down time and I'm looking for suggestions. The DB is also being physically relocated about 1000 miles away. The database has two application schemas, both of which use LOBS and the total bytes is about 60g. I've tried using exp/imp (datapump isn't an option because of v9 at the source) but it takes about 36 hours to import which is too long. My next thought is to use streams to keep the DBs in sync, and then just switch over to the new DB. I've never used streams though and am unfamiliar with it. Is this a viable option? How do I instantiate the 11.2 db? Can I use exp/imp and some how tell the v9 DB at what point to begin sending changes to the new DB? Will the streams queue be able to queue all of the messages that might be created during the 36+ hours it takes to copy the export file to the v11 db? Is there a way in v9 to tell it what SCN or time to begin queuing at? Materialized views is another option I've thought about but from what I've read, streams seems to be suited to this sort of thing. TIA |
#8
| |||
| |||
|
|
Like the others said, that sounds too slow. Have you tried exporting into a pipe and compressing, then going over the network? Also, creating tables as select can sometimes do surprisingly good, but it also is very sensitive to pipe size. It could very well be lobs too, you might consider doing those separately from everything else. I take it they are not inline? |
#9
| |||
| |||
|
#10
| |||
| |||
|
|
On 6/1/2011 8:40 PM, joel garry wrote: Like the others said, that sounds too slow. *Have you tried exporting into a pipe and compressing, then going over the network? *Also, creating tables as select can sometimes do surprisingly good, but it also is very sensitive to pipe size. It could very well be lobs too, you might consider doing those separately from everything else. *I take it they are not inline? The import was running with commit=y. I removed that and the import went from 36 hours to 7.5 hours which may be within my client's tolerance for down time. I'm thinking maybe to set indexes=n as well and build the indexes afterwards in parallel. |
![]() |
| Thread Tools | |
| Display Modes | |
| |