Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hYbyx-000521-HD for pgsql-general@arkaria.postgresql.org; Wed, 05 Jun 2019 19:53:59 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1hYbyw-0004YK-5z for pgsql-general@arkaria.postgresql.org; Wed, 05 Jun 2019 19:53:58 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hYbyv-0004Y9-Ix for pgsql-general@lists.postgresql.org; Wed, 05 Jun 2019 19:53:57 +0000 Received: from mail-ot1-x32b.google.com ([2607:f8b0:4864:20::32b]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hYbys-0006Zh-L3 for pgsql-general@lists.postgresql.org; Wed, 05 Jun 2019 19:53:56 +0000 Received: by mail-ot1-x32b.google.com with SMTP id c3so1913255otr.3 for ; Wed, 05 Jun 2019 12:53:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-language; bh=BiXEqZV4WR4rwnafUWyxuFQI7rFu8q7+acibiqy+Tx8=; b=tFyblk1ITSPN9XXLB2gOCKaWmnLIN8iTJ1GxVk9RaPita5ja+7W+UT9/bu2L+gQxj4 tioJ9kzUTPC9WVComNI2ylfBH5JRLJUMuJXHsWyXQ8QJH/JeEBsYtz+3lDhLXjGmyy7s 8mIX6gC7QF/5/ak1qn7KPAi/9bkLQa+gi3zjJBYCsERUsVDh+ud2fNi6B/96nqLg2aRC 0q+ShqtS+3UA0CQKuvtiixtRxrMfZQc27hSM6Q9DGHUCvVuIkEWBcrhyCb8C47qZZ70S TAXMw3Hk+htRw0V2sSKZEi6dbIt6eoIzb3smTNR1JiXwY+sx2OBeCCtw9l4PvA4ew3pe MsxQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language; bh=BiXEqZV4WR4rwnafUWyxuFQI7rFu8q7+acibiqy+Tx8=; b=i2q/QecM2bJf4u0/FVqcgIWFdAiOsEExrkk2Eg0c9MDfCO99LYArEg7duWwXgxSmeq Enle99tohcsoHFd3/0tT25lq5LpRcx5T1GKE+DUp6R/Kdh4GD1nAeDKY2hp7hrKIqtk2 S4IxSYAKDOO6fdhrZc9E0+nCfBsOItIbwCTbP12jiM5cT0myaKafH35Pp1KIUaKnaU6q EP+hcEo+eHO4VERZtPw8bsWdn8cV2GbfeeG/UsyGV+ZLpQxDmPfQ7fcqgPF+OpaEPl1l TlZkvUQg3bFZW1zi3OjctDnRBwTsTN4vKmT04UTuct2G1SExaANEB6K8bbzJkRTZsNQm RVeQ== X-Gm-Message-State: APjAAAUO3JHnRKYBjhIg9y2bNdI1iOqRQgUV8OA/nYNWYY6XDY+LV1wT PSQNmfJ9/M3vZJ5VdMLknYedeQoRKKTgNw== X-Google-Smtp-Source: APXvYqzjO7TGBRmYa51MSAhiXoDgp+EAmtTgHo1RP4ptUc1W5ufrzEWEqskvshUgVe4C4GtOqPXOWA== X-Received: by 2002:a9d:5e83:: with SMTP id f3mr6549712otl.90.1559764432924; Wed, 05 Jun 2019 12:53:52 -0700 (PDT) Received: from [192.168.1.10] (ip70-171-116-89.no.no.cox.net. [70.171.116.89]) by smtp.googlemail.com with ESMTPSA id i5sm7999100otf.26.2019.06.05.12.53.51 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 05 Jun 2019 12:53:52 -0700 (PDT) Subject: Re: configure multiple repository path in pgbackrest To: pgsql-general@lists.postgresql.org References: From: Ron Message-ID: <7dc4dcf1-8724-1ed4-bbf6-0545cb21c319@gmail.com> Date: Wed, 5 Jun 2019 14:53:51 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/alternative; boundary="------------5614A24AA511302A2B448047" Content-Language: en-US List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk This is a multi-part message in MIME format. --------------5614A24AA511302A2B448047 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit You set pg1-path and pg1-port in both v1demo and v2demo. Shouldn't v2demo use pg2-path and pg2-port? On 6/5/19 2:43 PM, Pavan Kumar wrote: > Hello Ron, > > Thank you so much for quick response. > > here is my configuration. > > [postgres@oralnx v2demo4448]$cat /etc/pgbackrest/pgbackrest.conf > [v1demo] > pg1-path=/oradbaudit/pg_data_dir > pg1-port=5400 > [v2demo] > pg1-path=/oratrace/11_2_data > pg1-port=4448 > > # Backup repository configuration > [global] > repo1-path=/orabackup/WORM/PGBACKUP/visdemo5400 > repo1-retention-full=2 > repo2-path=/orabackup/WORM/PGBACKUP/v2demo4448 > repo2-retention-full=2 > > [postgres@oralnx v2demo4448]$ > > [postgres@oralnx v2demo4448]$ pgbackrest --stanza=v2demo > --log-path=/oratrace/pg_alert_log > --repo-path=/orabackup/WORM/PGBACKUP/v2demo4448 --log-level-console=detail > --log-level-file=detail stanza-create > WARN: configuration file contains invalid option 'repo2-path'   >>>>>>>> > ************* > WARN: configuration file contains invalid option 'repo2-retention-full'  > >>>>>> ********* > 2019-06-05 19:35:05.351 P00   INFO: stanza-create command begin 2.14: > --log-level-console=detail --log-level-file=detail > --log-path=/oratrace/pg_alert_log --pg1-path=/oratrace/11_2_data > --pg1-port=4448 --repo1-path=/orabackup/WORM/PGBACKUP/v2demo4448 > --stanza=v2demo  >>>>> ***** for some reason it took repo1- path > 2019-06-05 19:35:06.674 P00   INFO: stanza-create command end: completed > successfully (1324ms) > [postgres@oralnx v2demo4448]$ > > It got errored out when I check stanza > > [postgres@oralnx v2demo4448]$pgbackrest --stanza=v2demo > --log-level-console=info check > WARN: configuration file contains invalid option 'repo2-path' > WARN: configuration file contains invalid option 'repo2-retention-full' > 2019-06-05 19:36:31.188 P00   INFO: check command begin 2.14: > --log-level-console=info --pg1-path=/oratrace/11_2_data --pg1-port=4448 > --repo1-path=/orabackup/WORM/PGBACKUP/visdemo5400 --stanza=v2demo  >>>> > *** why it is not taking repo2-path > ERROR [055]: : unable to open > /orabackup/WORM/PGBACKUP/visdemo5400/backup/v2demo/backup.info > or > /orabackup/WORM/PGBACKUP/visdemo5400/backup/v2demo/backup.info.copy > ERROR [055]: : > /orabackup/WORM/PGBACKUP/visdemo5400/backup/v2demo/backup.info > does not exist and is required to perform a backup. > HINT: has a stanza-create been performed? > ERROR [055]: : > /orabackup/WORM/PGBACKUP/visdemo5400/backup/v2demo/backup.info > does not exist and is required to perform a backup. > HINT: has a stanza-create been performed? > 2019-06-05 19:36:32.826 P00   INFO: check command end: aborted with > exception [055] > [postgres@oralnx v2demo4448]$ > here is my configuration > > > > On Wed, Jun 5, 2019 at 10:09 AM Ron > wrote: > > > > On 6/5/19 9:48 AM, Pavan Kumar wrote: >> Hello Experts, >> >> Is it possible to configure multiple backup repositories in >> pgbackrest tool in one server? >> I am getting few issues with that. > > https://pgbackrest.org/command.html#command-backup > > 3.4.9 > Repository Path Option (--repo-path) > Path where backups and archive are stored. > The repository is wherepgBackReststores backups and archives WAL segments. > > It may be difficult to estimate in advance how much space you'll need. > The best thing to do is take some backups then record the size of > different types of backups (full/incr/diff) and measure the amount of > WAL generated per day. This will give you a general idea of how much > space you'll need, though of course requirements will likely change > over time as your database evolves. > > default: /var/lib/pgbackrest > example: --repo1-path=/backup/db/backrest > > > Since there's a --repo*1*-path, then presumably there can also be a > --repo2-path. > > You'd presumably associate a database with repo2 by using --pg2-path > > https://pgbackrest.org/command.html#command-archive-get > > 2.5 > Stanza Options > 2.5.1 > PostgreSQL Path Option (--pg-path) > PostgreSQLdata directory. > This should be the same as thedata_directorysetting inpostgresql.conf. > Even though this value can be read frompostgresql.conforPostgreSQLit > is prudent to set it in case those resources are not available during > a restore or offline backup scenario. > > Thepg-pathoption is tested against the value reported byPostgreSQLon > every online backup so it should always be current. > > example: --pg1-path=/data/db > > Deprecated Name: db-path > > Of course, this might not work, so you'll have to try it yourself. > > -- > Angular momentum makes the world go 'round. > > > > -- > *Regards, > > #!  Pavan Kumar > ----------------------------------------------*- > *Sr. Database Administrator..!* > *NEXT GENERATION PROFESSIONALS, LLC* > *Cell    #  267-799-3182 #  pavan.dba27 (Gtalk) * > *India   # 9000459083* > > *Take Risks; if you win, you will be very happy. If you lose you will > be Wise * > -- Angular momentum makes the world go 'round. --------------5614A24AA511302A2B448047 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit You set pg1-path and pg1-port in both v1demo and v2demo. Shouldn't v2demo use pg2-path and pg2-port?

On 6/5/19 2:43 PM, Pavan Kumar wrote:
Hello Ron,

Thank you so much for quick response. 

here is my configuration.

[postgres@oralnx v2demo4448]$cat /etc/pgbackrest/pgbackrest.conf
[v1demo]
pg1-path=/oradbaudit/pg_data_dir
pg1-port=5400
[v2demo]
pg1-path=/oratrace/11_2_data
pg1-port=4448

# Backup repository configuration
[global]
repo1-path=/orabackup/WORM/PGBACKUP/visdemo5400
repo1-retention-full=2
repo2-path=/orabackup/WORM/PGBACKUP/v2demo4448
repo2-retention-full=2

[postgres@oralnx v2demo4448]$

[postgres@oralnx v2demo4448]$ pgbackrest --stanza=v2demo --log-path=/oratrace/pg_alert_log --repo-path=/orabackup/WORM/PGBACKUP/v2demo4448 --log-level-console=detail --log-level-file=detail stanza-create
WARN: configuration file contains invalid option 'repo2-path'   >>>>>>>>  *************
WARN: configuration file contains invalid option 'repo2-retention-full'  >>>>>> *********
2019-06-05 19:35:05.351 P00   INFO: stanza-create command begin 2.14: --log-level-console=detail --log-level-file=detail --log-path=/oratrace/pg_alert_log --pg1-path=/oratrace/11_2_data --pg1-port=4448 --repo1-path=/orabackup/WORM/PGBACKUP/v2demo4448 --stanza=v2demo  >>>>> ***** for some reason it took repo1- path 
2019-06-05 19:35:06.674 P00   INFO: stanza-create command end: completed successfully (1324ms)
[postgres@oralnx v2demo4448]$

It got errored out when I check stanza 

[postgres@oralnx v2demo4448]$pgbackrest --stanza=v2demo --log-level-console=info check
WARN: configuration file contains invalid option 'repo2-path'
WARN: configuration file contains invalid option 'repo2-retention-full'
2019-06-05 19:36:31.188 P00   INFO: check command begin 2.14: --log-level-console=info --pg1-path=/oratrace/11_2_data --pg1-port=4448 --repo1-path=/orabackup/WORM/PGBACKUP/visdemo5400 --stanza=v2demo  >>>> *** why it is not taking repo2-path 
ERROR [055]: : unable to open /orabackup/WORM/PGBACKUP/visdemo5400/backup/v2demo/backup.info or /orabackup/WORM/PGBACKUP/visdemo5400/backup/v2demo/backup.info.copy
ERROR [055]: : /orabackup/WORM/PGBACKUP/visdemo5400/backup/v2demo/backup.info does not exist and is required to perform a backup.
HINT: has a stanza-create been performed?
ERROR [055]: : /orabackup/WORM/PGBACKUP/visdemo5400/backup/v2demo/backup.info does not exist and is required to perform a backup.
HINT: has a stanza-create been performed?
2019-06-05 19:36:32.826 P00   INFO: check command end: aborted with exception [055]
[postgres@oralnx v2demo4448]$
here is my configuration



On Wed, Jun 5, 2019 at 10:09 AM Ron <ronljohnsonjr@gmail.com> wrote:


On 6/5/19 9:48 AM, Pavan Kumar wrote:
Hello Experts,

Is it possible to configure multiple backup repositories in pgbackrest tool in one server?
I am getting few issues with that. 

https://pgbackrest.org/command.html#command-backup

3.4.9
Repository Path Option (--repo-path)
Path where backups and archive are stored.
The repository is where pgBackRest stores backups and archives WAL segments.

It may be difficult to estimate in advance how much space you'll need. The best thing to do is take some backups then record the size of different types of backups (full/incr/diff) and measure the amount of WAL generated per day. This will give you a general idea of how much space you'll need, though of course requirements will likely change over time as your database evolves.
default: /var/lib/pgbackrest
example: --repo1-path=/backup/db/backrest

Since there's a --repo1-path, then presumably there can also be a --repo2-path.

You'd presumably associate a database with repo2 by using --pg2-path

https://pgbackrest.org/command.html#command-archive-get

2.5
Stanza Options
2.5.1
PostgreSQL Path Option (--pg-path)
PostgreSQL data directory.
This should be the same as the data_directory setting in postgresql.conf. Even though this value can be read from postgresql.conf or PostgreSQL it is prudent to set it in case those resources are not available during a restore or offline backup scenario.

The pg-path option is tested against the value reported by PostgreSQL on every online backup so it should always be current.
example: --pg1-path=/data/db
Deprecated Name: db-path

Of course, this might not work, so you'll have to try it yourself.

--
Angular momentum makes the world go 'round.


--
Regards,

#!  Pavan Kumar
----------------------------------------------
-
Sr. Database Administrator..!

NEXT GENERATION PROFESSIONALS, LLC
Cell    #  267-799-3182 #  pavan.dba27 (Gtalk)  
India   # 9000459083

Take Risks; if you win, you will be very happy. If you lose you will be Wise  

--
Angular momentum makes the world go 'round.
--------------5614A24AA511302A2B448047--