Today's tip is how to have a lean mean PostgreSQL client machine by only installing the needed tools. Why install all of PostgreSQL when your database server is up in the cloud, managed like a Compose PostgreSQL.
This is a quick guide for installing PostgreSQL (Postgres for short) on a Mac with Homebrew, and starting and stopping it with Lunchy.If you've just forked a Ruby on Rails project that requires Postgres, this tutorial will get you up and running in no time.
Most instructions for installing the PostgreSQL tools assume you want the database installed too. It's a reasonable assumption if you're dealing with users who don't have access to PostgreSQL in the cloud or on a remote server.
So, in this PostgreSQL Tip, we'll look at how you can install just psql on Windows, Linux and macOS, allowing you to quickly get up and running and connected to your Compose PostgreSQL service. We'll cover:
Let's dive in.
We recommend Homebrew as a package manager for macOS. With Homebrew in place you'll be able to install numerous applications, usually with the programs available in
/usr/local/bin. Homebrew's package for the PostgreSQL client tools is the
libpq package. Brew makes it easy to install:
There's a small catch though: libpq won't install itself in the
/usr/local/bin directory. To make that happen, you need to run:
Which will symlink all the tools, not just libpq, into the
/usr/local/bin directory. You're ready to run psql and start connecting now.
Linux systems, unlike macOS, have a package manager built in. For Ubuntu (and Debian-based distributions) thats's the
apt command. The PostgreSQL client is distributed in the appositely named
postgresql-client so all you need to do is run:
This will install the PostgreSQL 10 client, which can happily connect to earlier versions of PostgreSQL.
For Red Hat Enterprise Linux (or RHEL as it's usually written), there's a little more set up to do than Ubuntu. For RHEL, the package manager is
yum. First, you need to point
yum at the PostgreSQL repository like this:
Yum goes to that URL and configures itself to use that package repository. With that done, you can add packages from it by name:
This installs just the client packages. If you are wondering where to find that repository URL, head to Linux Downloads (Red Hat Family) where you'll find a form which will let you select the PostgreSQL version, platform and architecture and it'll give you the appropriate instructions for that Red Hat variant - that includes CentOS, Scientific Linux, and Oracle Enterprise Linux. It also includes Fedora but read on..
Fedora's default repositories already have a PostgreSQL client available from them. So For Fedora 27 and 28 and later, install the PostgreSQL client from the terminal with:
and that's all you need to do.
On Windows 10, there's a bit more work to be done. We currently recommend using the PostgreSQL installer from Enterprise DB. It's a full installation package for PostgreSQL on Windows but you can set it to only install the command line tools like psql. Click on that link and select PostgreSQL 9.6 or 10 and Windows 10 as the platform. Once the executable file is downloaded, run it and you'll see the following options:
Select only the 'Command Line Tools' because we don't need the server installed. After it installs, you'll need to set up your Windows environment variables so that you can use the psql client in the command prompt.
Go to the Control Panel > System and Security > System and select Advanced system settings.
From there you'll see a box called System Properties. Select Environment Variables. A window will appear with the two sets of environment variables. In the top set, marked 'User variables for..' select the
PATH entry and then click the Edit button. An edit window will appear. Click New and add the path to the psql client. Your path will depend on where PostgreSQL installed, but typically that would be:
After that, click OK a couple of times to go back to the desktop. Start a new Command Prompt and you should be able to run psql. With no server set and no server running locally, you'll see the following which means that it's working.
We've covered setting up the PostgreSQL client for multiple platforms so start connecting. Google earth pro for mac air. If you have suggestions on what you'd like to see covered in our next PostgreSQL Tips, drop us a line to [email protected] and we'll see how we can tip you too.
attributionJan Kahánek via Unsplash