this post was submitted on 09 Jul 2023
52 points (100.0% liked)

Selfhosted

39435 readers
6 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

I'm currently struggling with upgrading some Postgres DBs on my home-k3s and I'm seriously considering throwing it all away since it's such a hassle.

So, how do you handle DBs? K8s? Just a regular daemon?

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 7 points 1 year ago* (last edited 1 year ago) (3 children)

Are we talking database schema migrations or migrating a database between Postgres instances?

If it’s the former, the pattern is usually to run them in init containers or Jobs but I have been wanting to try out SchemaHero for a while which is a tool to orchestrate it and looks pretty neat.

ETA: Thought I was replying to your below comment but Memmy deleted it the first time for some reason, my bad.

[–] [email protected] 1 points 1 year ago (2 children)

It's about PostgreSQL upgrade.

The "pattern" there is to either dump and reinsert the entire DB or upgrade by having two installations (old and new version), which doesn't exactly work well in k8s. It's possible, but seems hacky

[–] cdombroski 3 points 1 year ago

I've always used this docker image to do pg upgrades. It runs pg_upgrade to recreate the system tables and copy the user tables (which normally don't have any storage changes). It does require that the database isn't running during the upgrade so you're going to have a bit of downtime. Make sure you redo any changes to any configuration files, especially pg_hba.conf

load more comments (1 replies)
load more comments (1 replies)