Re: Review my steps for rollback to restore point - Mailing list pgsql-general

From Laurenz Albe
Subject Re: Review my steps for rollback to restore point
Date
Msg-id ddda8f051bfe265e74d50f17dd8a4227211b9633.camel@cybertec.at
Whole thread Raw
In response to Review my steps for rollback to restore point  (chandan Kumar <chandan.issyoga@gmail.com>)
Responses Re: Review my steps for rollback to restore point
List pgsql-general
On Tue, 2025-03-04 at 14:26 +0530, chandan Kumar wrote:
> Hello,
>  I hope you are doing fine. I need your expertise on below case study.
> My current production environment is 2 node streaming replication hosted on
> Ubuntu VM 's on Azure. I have performed below steps on primary database.
> 1- Take Base backup
> 2-  Create a restore point using pg_create_restore_point()
> 3-  executed some DDL statement (CREATE VIEW,ADD INDEX,DROP INDEX)
> 4-  Perform rollback using restore point
>  To rollback, you must stop PostgreSQL, restore the last full backup, and apply
>  WAL files until the restore point:
> 1. Stop PostgreSQL Service
> 2. Restore from Full Backup (Using pg_basebackup)
> 3. Modify recovery.conf (or postgresql.conf for newer versions)
> o Set recovery target name:
>                                               recovery_target_name = 'before_ddl_changes'
>                                               recovery_target_action = 'pause'
> o Set restore_command to replay WAL logs:
>                                              restore_command = 'cp /path/to/wal_archive/%f %p'
> 4. Start PostgreSQL
>                  sudo systemctl start postgresql
> 5. Verify Recovery Status
>                 SELECT pg_is_in_recovery();
>                 After verification, finalize recovery:
>                 touch /var/lib/postgresql/data/recovery.signal
>                 or
>                 rm /var/lib/postgresql/data/recovery.conf
>                Then restart PostgreSQL.
> 6. Reestablish replication 
>
> Could you please help if my steps are correct ? Can we achieve rollback from any
> other approach without restoring basebackup?

You have to create /var/lib/postgresql/data/recovery.signal *before* you
start the server.  Forget about "recovery.conf", that was before v12.

You can set "recovery_target_action = 'promote'".

Yours,
Laurenz Albe



pgsql-general by date:

Previous
From: chandan Kumar
Date:
Subject: Review my steps for rollback to restore point
Next
From: chandan Kumar
Date:
Subject: Re: Review my steps for rollback to restore point