From: | "Josh Harrison" <joshques(at)gmail(dot)com> |
---|---|
To: | "Dawid Kuroczko" <qnex42(at)gmail(dot)com> |
Cc: | "Scott Marlowe" <scott(dot)marlowe(at)gmail(dot)com>, "General postgres mailing list" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Online Oracle to Postgresql data migration |
Date: | 2008-01-17 03:00:04 |
Message-ID: | 8d89ea1d0801161900p62a30891s853f89ad26ba223d@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Jan 16, 2008 1:31 PM, Dawid Kuroczko <qnex42(at)gmail(dot)com> wrote:
> On Jan 11, 2008 7:14 PM, Scott Marlowe <scott(dot)marlowe(at)gmail(dot)com> wrote:
> >
> > On Jan 11, 2008 12:02 PM, Josh Harrison <joshques(at)gmail(dot)com> wrote:
> > > Hi
> > > We have an Oracle production database with some terbytes of data. We
> wanted
> > > to migrate that to Postgresql (rigt now...a test database and not
> > > production) database.
> > > What are the good options to do that?
> > > Please advise me on where to look for more information on this topic
> >
> > You're going to need to use your brain for a fair portion of this,
> > because how you use oracle will be just different enough from everyone
> > else that no boxed solution.
> >
> > You have two steps to work on. The first is the DDL, to create
> > equivalent tables in pgsql as in oracle, the second is to migrate over
> > your data.
> >
> > I've generally done the ddl conversion by hand in an editor, and
> > migrated data over with some scripting language like perl or php.
>
> If you are migrating terabytes don't use perl. I did some experimental
> "for fun" migration some time ago and DBD::Oracle worked remarkably
> slow... What you need is to get a program which will export data
> from Oracle as CSV. As far as I know Oracle does not provide such
> a tool (though it will import CSV happily through sqlldr),
> but you can Google out a C-code which does just that. I don't remember
> where I left if... :-(
>
> From that, you just need to stream CSV into PostgreSQL's COPY
> command. It worked FAST. Really.
>
> And be wary of data types conversion.
>
> In this case how do you migrate the simultaneous
updates/deletes/inserts, Since this is a production system, there are
everyday changes in the databse ?
From | Date | Subject | |
---|---|---|---|
Next Message | ivan.hou | 2008-01-17 03:01:11 | template0(or template1) is a database? |
Previous Message | Chris | 2008-01-17 02:16:18 | Re: Prepared statement's plan |