I’ve used PostgreSQL for almost 20 years. During this time, I’ve struggled with its official clients. Normally, I have a good memory (except for people’s names and faces). So having to refer to the tool documentation each time I wanted to use it was very unusual for me.
So I asked myself, why is that so? I noticed that there was inconsistency and even incompatibility among flags. Sometimes you need the -d
flag for the database name. Other times, it’s optional. There are also cases when you shouldn’t use it at all. On top of that, some tools will accept connection strings as a database name while others won’t.
I raised the issue with the community, hoping for support. Yet, I faced pushback because of backward compatibility. So, I put that thought away and did nothing.
But the idea kept bugging me. I still had trouble with PostgreSQL clients. I used psql often, so I was fine with that. But I always faced issues with other clients. I talked to other PostgreSQL users. They had the same problem I did. My idea was not so stupid after all! I talked to Joe Conway. I explained that the community didn’t like my idea. But, the PostgreSQL users I shared it with were very excited. He encouraged me to create a bash wrapper to give life to my idea.
So, let me introduce you to my brand new tool: PG Lord of the Ring: one tool to control them all.
- The tool is available here: https://gitlab.com/l_avrot/pg-lord-of-the-ring.
- The documentation is here: https://l_avrot.gitlab.io/pg-lord-of-the-ring
Feel free to use and create issues so we can all make this tool better together! The tool is under the PostgreSQL license.