Re: Linked directory or explicit reference

From: Senor Cervesa <frio_cervesa(at)hotmail(dot)com>
To: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: Linked directory or explicit reference
Date: 2024-05-02 04:50:31
Message-ID: SN4P221MB06837796CB826B7947778F1CF7182@SN4P221MB0683.NAMP221.PROD.OUTLOOK.COM
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 4/30/2024 17:31, Ron Johnson wrote:
> On Tue, Apr 30, 2024 at 7:00 PM Senor Cervesa
> <frio_cervesa(at)hotmail(dot)com> wrote:
>
> Hi All;
>
> When doing an initial install of PostgreSQL on RHEL 7 or 8 derived
> OS via rpm, what are pros, cons and recommendations of these 2
> procedures for utilizing a second disk?
>
> Secondary SSD or RAID mounted at /disk2.
>
> Option #1
>
> 1. install the rpm which creates basic user and home
> 2. Create symlink /var/lib/pgsql/15/data --> /disk2/data
> 3. initdb with no special options
>
> Or Option #2
>
> 1. install the rpm which creates basic user and home
> 2. initdb with --pgdata=/disk2/data
> Probably using included 'postgresql-12-setup' script
>
> I also link /var/lib/pgsql/data  --> ../15/data so automation can
> reference postgresql.conf without knowing version (legacy stuff).
>
>
> In my experience,The PgBackRest restore feature does not like symlinks.
I hadn't considered that and it's the kind of experience feedback I'm
looking for. It won't be an issue for me though.
>
> The install is automated with a bash script which handles several
> options including whether there is a second disk for DB. Scripting
> the install with or without the second disk is straight forward
> but I'm concerned with either scenario causing unforeseen differences.
>
> I don't think there's a benefit to using tablespace here but I
> have no experience with it. The systemd service is configured with
> a dependency on the disk mount so I don't think there are
> different risks for starting postgres with missing data directory.
>
> I've run postgres in both scenarios and not had any issues. I'm
> interested in comments from others on their experience using these
> or other options.
>
> Is the mount point just "/disk2" when using "--pgdata=/disk2/data"? 
> I've gotten "directory not empty" errors when the mount point is
> "/Database/x.y/data".
>
When linked, it looks like:

[root(at)test110 pgsql]# ll /var/lib/pgsql/15/data
lrwxrwxrwx. 1 root root 12 May  1 05:21 /var/lib/pgsql/15/data ->
/disk2/data/

I'm not sure what would trigger "directory not empty". When running
initdb there is nothing under data. I could see a problem with a symlink
throwing that message as a catchall though. I haven't run across any
problems yet.

Thank you Ron Johnson for the feedback.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message RAJAMOHAN 2024-05-02 05:46:42 Prevent users from executing pg_dump against tables
Previous Message Kashif Zeeshan 2024-05-02 03:45:05 Re: Table data migration from single server to Flexi server