HACKER Q&A
📣 iio7

PostgreSQL is such a pain to setup


I do not understand why most people on HN seem to prefer PostgreSQL. It's such a pain to setup, wasting so much time getting everything to work. Also all the pain with the upgrading procedure.

With MariaDB you get a solid DB up and running in a matter of minutes and upgrading is simple and easy. We have never, not a single time in 20 years experienced any problems.

I absolute hate the administration part of working with PostgreSQL, so much so that I have decided to remove it and never use it again on our servers.


  👤 jatone Accepted Answer ✓
because the time taken to setup the DB is the smallest amount of effort you'll put into it over the lifetime of the application.

plus, its like 30 seconds to setup: install, add a role, and maybe adjust hba.conf for access control settings for the local machine.

the fact you were able to 'remove it and never use it on your servers' means you don't really need a DB like postgresql (or mariadb/mysql). you clearly don't have any data gravity problems if it was that easy and you were allowed to make that decision unilaterally.


👤 smt88
I have been using Postgres for 10 years on dozens of projects and never felt the pain you're (vaguely) describing.

I have also set up MariaDB, Percona, MySQL, Oracle, and SQL Server. All were roughly the same time/difficulty.

Scaling and clustering differs wildly between them, but initial setup is similar.

Also, rejecting a DB for initial setup is optimizing for the wrong thing. Your company can lose, at most, a day struggling with setup, but it can lose millions by dealing with poor security, lacking features, or outages.

It sounds like you need to treat your servers like cattle instead of pets, too[1].

1. https://www.hava.io/blog/cattle-vs-pets-devops-explained


👤 throwaway888abc
Check DynamoDB or Firebase or Fauna or Cockroach..

Pick the tools which suit you best.

Take a deep breath - Life is full of choices


👤 theamk
Unless you are doing multi-server setup, they should approximately the same.

I really like that you don’t need Postgres passwords for localhost case - UID-based authentication is really nice, but I heard recent MariaDB support this as well.


👤 jrjsmrtn
What are your pain points, exactly?

👤 oshiar53-0
The simplest setup route:

  initdb -D db
  pg_ctl -D db start