Subject: Postgresql Software Location

From: Henry Ashu <[email-masked]>
Date: Thu, 29 Aug 2024 11:12:37 -0700

We have installed our postgresql software in this location:

[postgres@testdbapql01 data]$ pwd
/var/lib/pgsql/16/data
[postgres@testbapql01 data]$ df -h .
Filesystem             Size  Used Avail Use% Mounted on
/dev/mapper/rhel-root   28G  4.5G   23G  17% /
[postgres@testdbapql01 data]$

Does this look correct? We are thinking that it should not be installed on
the root filesystem.

Thank you

*Henry Ashu*

Database Administrator
*o:* 503.672.5114 | *f:* 800.551.8821 | DAT.com
 <https://www.dat.com/>    [image: Like us on
Facebook] <https://www.facebook.com/loadboards>  [image: Follow us on
Twitter] <https://twitter.com/loadboards>  [image: Connect with us on
LinkedIn] <https://www.linkedin.com/company/datsolutions>  [image: Visit
our YouTube Channel] <https://www.youtube.com/datloadboards>  [image: Visit
us on Instagram] <https://instagram.com/dat_solutions>

---

From: Ron Johnson <[email-masked]>
Date: Thu, 29 Aug 2024 14:58:53 -0400

> [postgres@testdbapql01 data]$ pwd

That directory is where I put the $PGDATA for a long time.  Now I put it in
/Database/16/data.  Why?  Two reasons:
1. /var/lib/pgsql is usually postgres' $HOME, and I don't want to clutter
that up.
2. /Database makes it obvious to all concerned what's in it.

> Does this look correct?

"Correct" is relative.  What other mount points are on that server (for
example, /var/log)?  Having said that... I think it's a horrible idea.

> We are thinking that it should not be installed on the root filesystem
>

I would *never* put a database directory on the root filesystem.  Some
other process outside of your control fills up root, and... poof, there
goes your database.  (Postgresql doesn't like full mount points.)

We go with three mount points:
- /Database/${MajorVersion}  (note the lack of "data"!)
- /Database/backups
- /var/log/postgresql (which $PGDATA/postgresql.conf log_directory points
to).

No separate mount point for pg_wal.  I think that's a relic of the bygone
era of 300GB spindles (much less 300MB spindles). YMMV..

-- 
Death to America, and butter sauce.
Iraq lobster!

---

From: Rui DeSousa <[email-masked]>
Date: Thu, 29 Aug 2024 22:22:35 -0400

> On Aug 29, 2024, at 2:12 PM, Henry Ashu <[email-masked]> wrote:
> 
> Does this look correct? We are thinking that it should not be installed on the root filesystem.
> Thank you
> 
> Henry Ashu
> 
> Database Administrator
> o: 503.672.5114 | f: 800.551.8821 | DAT.com
> 
>  <https://www.dat.com/>     <https://www.facebook.com/loadboards>   <https://twitter.com/loadboards>   <https://www.linkedin.com/company/datsolutions>   <https://www.youtube.com/datloadboards>   <https://instagram.com/dat_solutions>
Yes, it is better to have more mount points than not.  Root should be its own mount point; OSs do not like when the root volume is full thus it is normally a very small filesystem.

Disclaimer: I’ve seen servers with a single mount point /.  A lot of devops servers are setup with a single mount point for the entire OS.  Seems like that is the case with your system.  The reason to have multiple filesystem is space management, mount point options, and filesystem corruption.  I haven’t had the need to run fsck in decades until last month.  An xfs volume was corrupted and even fsck couldn’t fix it; had to resort to a filesystem snapshot.  

I normally have three; 

1. /var/log — for log files via syslog.  You don’t want a run away application to full up the log directory and crash the server.  
2. $PGDATA — data volume 
3. $PGDATA/pg_wal — Normally, I’m using ZFS with different filesystem properties.  It’s also a good idea to manage the space separately.

As far as absolute mount points that’s a preference; my current gig is using the following with the instance names as a directory under those mount points.

/pg_data
/pg_wal

---

From: Sam Stearns <[email-masked]>
Date: Fri, 30 Aug 2024 12:03:42 +0930

Thanks, Rui!

On Fri, Aug 30, 2024 at 11:52 AM Rui DeSousa <[email-masked]> wrote:

> our YouTube Channel] <https://www.youtube.com/datloadboards>  [image:
> Visit us on Instagram] <https://instagram.com/dat_solutions>
>
>
> Yes, it is better to have more mount points than not.  Root should be its
> own mount point; OSs do not like when the root volume is full thus it is
> normally a very small filesystem.
>
> Disclaimer: I’ve seen servers with a single mount point /.  A lot of
> devops servers are setup with a single mount point for the entire OS.
> Seems like that is the case with your system.  The reason to have multiple
> filesystem is space management, mount point options, and filesystem
> corruption.  I haven’t had the need to run fsck in decades until last
> month.  An xfs volume was corrupted and even fsck couldn’t fix it; had to
> resort to a filesystem snapshot.
>
> I normally have three;
>
> 1. /var/log — for log files via syslog.  You don’t want a run away
> application to full up the log directory and crash the server.
> 2. $PGDATA — data volume
> 3. $PGDATA/pg_wal — Normally, I’m using ZFS with different filesystem
> properties.  It’s also a good idea to manage the space separately.
>
> As far as absolute mount points that’s a preference; my current gig is
> using the following with the instance names as a directory under those
> mount points.
>
> /pg_data
> /pg_wal
>
>
>
>

-- 

*Samuel Stearns*
Lead Database Administrator
*c:* 971 762 6879 | *o:* 503 672 5115 | DAT.com
<https://www.dat.com/?utm_medium=email&utm_source=DAT_email_signature_link>

---

From: ji hwan song <[email-masked]>
Date: Fri, 30 Aug 2024 12:56:04 +0900

루트엔 설치 가급적 하지마시고 별도의 공간에 파일시스템을 만들고 해당 명칭으로 링크를 걸어주세요..