Обсуждение: Database Refresh confusion

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

Database Refresh confusion

От
Rijo Roy
Дата:
Hello Experts, 

Today, my colleague asked me if there was any way to check the progress of recovery (backup-recovery) in Postgresql. I told him to check the postgresql logs and look out for keywords such as recovery. He was refreshing the database by restoring a database backup but the method he tried surprised me. 
The below commands were used:
pg_basebackup -h remoteservername -p Port number -D /path -X s -c fast -n -P -v
And he just started the postgresql cluster using pg_ctl 

I told him that he missed creating a recovery.conf with a recovery command, but he told me that he always does this way.  I told him that the process is wrong and this will do a crash recovery and there are high chances of data corruption. He replied saying he never faced an issue following his process of doing it without recovery.conf

2 questions:
1. Is this a good practice for refreshing data into a new server. 
2. Is there any other mechanism to track the restoration process other than to check the postgresql logs. 

The postgresql version used in 10.0 on a Linux 6.9


Thanks, 
Rijo Roy 

Re: Database Refresh confusion

От
Andreas Kretschmer
Дата:

Am 13.07.2018 um 13:10 schrieb Rijo Roy:
> Hello Experts,
>
> Today, my colleague asked me if there was any way to check the 
> progress of recovery (backup-recovery) in Postgresql. I told him to 
> check the postgresql logs and look out for keywords such as recovery. 
> He was refreshing the database by restoring a database backup but the 
> method he tried surprised me.
> The below commands were used:
> pg_basebackup -h remoteservername -p Port number -D /path -X s -c fast 
> -n -P -v
> And he just started the postgresql cluster using pg_ctl
>
> I told him that he missed creating a recovery.conf with a recovery 
> command,

that's not necessary, without recovery.conf postgres will start as a 
normal server.


> but he told me that he always does this way.  I told him that the 
> process is wrong and this will do a crash recovery and there are high 
> chances of data corruption.

No, this way is safe


> He replied saying he never faced an issue following his process of 
> doing it without recovery.conf
>
> 2 questions:
> 1. Is this a good practice for refreshing data into a new server.
> 2. Is there any other mechanism to track the restoration process other 
> than to check the postgresql logs.

pg_basebackup has a progress-feature, -P, see you command above


>
> The postgresql version used in 10.0 on a Linux 6.9

the latest version is 10.4 and contains a lot of bugfixes, consider a 
update soon.


Regards, Andreas

-- 
2ndQuadrant - The PostgreSQL Support Company.
www.2ndQuadrant.com