When development relies on database interaction, few things are more frustrating than a database client that gets in the way.
On my current project, we’re constantly investigating data, switching from table to table, and writing queries with our PostgreSQL database. After experimenting with a few database clients (SQLPro, Postico, and TablePlus), we quickly noticed that some are better for our needs than others.
How to Start a PostgreSQL Server on Mac OS X. Last modified: September 08, 2020. There are two main ways to install PostgreSQL on mac OS X. The homebrew package manager; Downloading the app file from postgresapp.com. Homebrew can be installed by running the following command in a terminal. We now have postgres installed and running with a default database initialised. We can connect to our database using the psql client, this is just a simple terminal postgres terminal client. We can connect to the our default database with: $ psql -h localhost -d postgres.
To save you the trouble of downloading and testing them for yourself, I’m going to walk through of a few of the best.
My Criteria
SQLPro for PostgresPostgres Mac Client
If you are mostly looking to write queries, SQLPro for Postgres could be a great fit. I found it to be less of a database viewer and more of a query building tool. For example, navigating to a table generates a query for the first 1,000 items by default. You’ll have syntax highlighting and autocompletion of table and column names, making it easy to crank out queries. One downside of this client is that it is specific to PostgreSQL, making it less likely to be useful on the next project.
Overall, the organization is straightforward. However, working with multiple schemas can be confusing, as they are not separated. You can try it out with a seven-day free trial before deciding to buy the Pro version.
My rating
For my purposes, the query-centric design was inconvenient, so this was not my client of choice.
Postico
I recently started using Postico after a teammate recommended it, and I have found it simple and easy to use. There is a free version that offers a solid set of features–with the exception of multiple tabs for database connections or tables. However, with Postico’s quick view into referenced tables, I rarely find this limiting.
Similarly, the buttons in the footer allow for seamless navigation between Content, Structure, and DDL (Data Definition Language). Like SQLPro for Postgres, Postico only supports PostgreSQL databases, making it less portable.
My rating
Postico is a great choice for its ease of navigation and simple design. The visual design is not quite as tidy as other clients. However, the ease of navigation and viewing content makes it a go-to PostgreSQL client.
TablePlus
TablePlus is a great multipurpose database client that’s not limited to PostgreSQL. This is one that I like to keep around. The organization is easy to understand, making it easy to switch between database connections, schemas, table structure, and data.
Users of the free version will quickly find that there is a limit to the number of tabs you can have open at once. I would highly recommend upgrading to the Pro version to avoid the impervious tab limit warning and to support the project!
The design of TablePlus is more visually appealing than the average database client, and it does a good job of supplying rich features without overloading the user.
My rating
TablePlus is my choice client for its support of many databases, clean design, and ease of use. After nearly eight months of near-daily use, I still like it, and that is saying something for database clients.
So, Which Should you Choose?
There are many clients out there and they are always improving. TablePlus, Postico, and SQLPro for Postgres are just a few solid options for helpful database tooling.
There are two main ways to install PostgreSQL on mac OS X.
Using Homebrew
Homebrew can be installed by running the following command in a terminal:
/usr/bin/ruby -e '$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)'
If Homebrew is already installed, make sure that it is up to date by running:
brew update
Then ensure there are no conflicts or errors using:
brew doctor
Homebrew is a powerful package manager with many uses, including installing and running postgreSQL. This can be done by typing the following command into a terminal:
Now that postgres is installed the default server can be started by running the command:
This will start up a postgres server hosted locally on port 5432. The server will be run out of the directory
/usr/local/var/postgres .
It can now be accessed by typing the following command:
This will connect to the server and access the postgres database. Once this is done:
The process should look like this:
This shows that the server has been started and can be connected to.
(Optional) Creating a Custom Data Directory
A custom data directory can also be used for a server. To do this, first create a directory to be used as the server location. For example, create a directory called myData in the home directory:
Psequel
Once the directory is created, the server can be initialized. This means that we configure the directory and add the necessary files to run the server. To do this run the
initdb command as shown:
This will fill the myData directory with files necessary to run the server:
Now that the server is initialized and the log file is created, you can start the server from this directory. To do this use the command and substitute in for the specified values:
The “Data Directory” refers to the directory that was just initialized (in this case myData). The “Log file” is a file that will record server events for later analysis. Generally log files are formatted to contain the date in the file name (e.g. “2018-05-27.log” or “myData-logfile-2018-05-27.log”) and should be stored outside of the database that they are logging so as to avoid unnecessary risks. Log files can be dense to read but are very useful for security and debugging purposes:
Postgresql Tutorial Pdf
The command above will generate a log file like the one shown, start the server, and tie the log file to the server. If a log file is not specified, events will be logged to the terminal:
The server will only start if the port is free. If the default server is running it must first be stopped using the
pg_ctl -D /usr/local/var/postgres stop command:
Once started, it can be connected to the same way as before using:
Using PostgreSQL App
To run a server through the postgres app, the first step is to download the program. The app can be downloaded on postgresapp.com. Once the app is downloaded and moved into the applications folder, the app can be opened.
Open the Postgres app:
In order to start the server, click the start button.
This will start the server. Details on the server can be found by opening the server settings:
This interface shows all the essential information regarding the server. It also allows the port to be changed very easily. This is useful because multiple PostgreSQL servers can
Note: To change the port in the terminal, the ‘postgres.conf’ file (which can be found in the data directory) must be edited. This looks like the following:
Postgresql Client Mac OsUsing Terminal with the PostgreSQL App
Once the app has been downloaded, command line tools can be used as well. These tools can be accessed by typing:
For example, the ‘postgres’ database on the server can be connected to using the psql tool with postgres as an argument:
Rather than typing out the full path each time however, the path can be added to a file that will allow significantly easier access to the tools, allowing the tools be accessed from any directory on the computer. To do this, the following command can be run in the terminal:
Once this is done, the ‘postgres’ database can be accessed by simply typing:
Postgres Client Mac RedditSummary
ReferencesPostgresql Client Mac
Written by: Matthew Layne
Reviewed by: Blake Barnhill , Matt David Comments are closed.
|
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |