Обсуждение: how to replicate a database from one machine to the other?

Поиск
Список
Период
Сортировка

how to replicate a database from one machine to the other?

От
"P Kapat"
Дата:
A total novice here!

Machine A: Kubuntu 8.04 has the required database under user userA
Machine B: RHEL 5 is the destination machine with userB

I want to transfer the entire database under userA from machine A to
user B under machine B. Is that possible?

--
Regards
PK
--------------------------------------
http://counter.li.org  #402424

Re: how to replicate a database from one machine to the other?

От
Shane Ambler
Дата:
P Kapat wrote:
> A total novice here!
>
> Machine A: Kubuntu 8.04 has the required database under user userA
> Machine B: RHEL 5 is the destination machine with userB
>
> I want to transfer the entire database under userA from machine A to
> user B under machine B. Is that possible?
>
Yes.

If the MachineB postgres version is older then you may have problems.

MachineA
pg_dump machineadb > madb.sql

copy madb.sql across to machineB

MachineB
psql < madb.sql

This would make a copy of the database named machineadb, if you want
every db on the server then you can use pg_dumpall

You may need options like -U -h and -W (username/host/prompt for
password) man psql or man pg_dump for more detail

Feel free to compress the file to reduce transfer times etc.

You can also reduce it to one step -

pg_dump machineadb | psql -h remotename


--

Shane Ambler
pgSQL (at) Sheeky (dot) Biz

Get Sheeky @ http://Sheeky.Biz

Re: how to replicate a database from one machine to the other?

От
"P Kapat"
Дата:
On Wed, Jun 25, 2008 at 11:10 PM, Shane Ambler <pgsql@sheeky.biz> wrote:
> P Kapat wrote:
>>
>> A total novice here!
>>
>> Machine A: Kubuntu 8.04 has the required database under user userA
>> Machine B: RHEL 5 is the destination machine with userB
>>
>> I want to transfer the entire database under userA from machine A to
>> user B under machine B. Is that possible?
>>
> Yes.
>
> If the MachineB postgres version is older then you may have problems.
>
> MachineA
> pg_dump machineadb > madb.sql
>
> copy madb.sql across to machineB
>
> MachineB
> psql < madb.sql
>
> This would make a copy of the database named machineadb, if you want every
> db on the server then you can use pg_dumpall
>
> You may need options like -U -h and -W (username/host/prompt for password)
> man psql or man pg_dump for more detail

Thanks Shane, that worked. There were some errors for missing roles,
but that was expected since the usernames were different on the two
machines.

--
Regards
PK
--------------------------------------
http://counter.li.org #402424