Обсуждение: Advice on migration without down-time
Hi guys,
due to the wrong initialisation of PostgreSQL data dir (which generates 'invalid multibyte character for locale'), I need to migrate approximately a 90GB database system on PostgreSQL 8.2.3. There is no replication system set up, yet.
The rawest solution is to:
- stop the server from updates,
- perform a backup with pg_dumpall (the daily bzipped dump all file is approximately 4GB)
- isolate the server (no incoming TCP connection allowed)
- stop the server
- rename the data dir and the tablespace directories
- reinit the data dir with the correct locale
- create the empty tablespace directories with proper rights for the postgres user
- restore the whole backup
- restart the server
Of course, this solution is time consuming, given the quantity of data to be restored (90GB).
I was wondering if you have ideas to propose. I imagine using replication (Slony-I?) could be a viable option, assuming that the different locale for the data dir of the two database servers does not influence the results. Using a slave DBMS could limit the down-time.
Thank you for your attention.
Cheers,
Gabriele
--
Gabriele Bartolini - Istruttore Informatico - Comune di Prato
Sistema Informativo - Servizi di E-Government e Open-Source
On Thursday 05 April 2007 07:59, Gabriele Bartolini wrote: > Hi guys, > > due to the wrong initialisation of PostgreSQL data dir (which > generates 'invalid multibyte character for locale'), I need to migrate > approximately a 90GB database system on PostgreSQL 8.2.3. There is no > replication system set up, yet. > > The rawest solution is to: > - stop the server from updates, > - perform a backup with pg_dumpall (the daily bzipped dump all file is > approximately 4GB) > - isolate the server (no incoming TCP connection allowed) > - stop the server > - rename the data dir and the tablespace directories > - reinit the data dir with the correct locale > - create the empty tablespace directories with proper rights for the > postgres user > - restore the whole backup > - restart the server > > Of course, this solution is time consuming, given the quantity of > data to be restored (90GB). > Yes... one thing to note though... you seem to imply you can set the server into a read only mode (one step is to stop the server from updates and another to disallow tcp/ip). If you can do this, then it is very viable that you can do the whole dump/restore while the site is running and then just have an outage while you do a shutdown / cutover to the new server. > I was wondering if you have ideas to propose. I imagine using > replication (Slony-I?) could be a viable option, assuming that the > different locale for the data dir of the two database servers does not > influence the results. Using a slave DBMS could limit the down-time. > Using slony is another option, though if your unfamiliar it certainly comes with more complexity than the first solution. -- Robert Treat Build A Brighter LAMP :: Linux Apache {middleware} PostgreSQL