You can get macOS PostgreSQL packages from several different sources.
Interactive installer by EDB
A Companion to Postgres.app Postgres.app is the fastest way to run a PostgreSQL server locally. Since Postico is made by the maintainer of Postgres.app, the two apps co-operate perfectly. Optimized for small displays A slim toolbar conserves vertical screen estate. The sidebars can be.
- Postgres.app is a full featured PostgreSQL installation packaged as a standard Mac app.
- 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.
- SQLPro for Postgres is a advanced but lightweight PostgresSQL database client, allowing quick and simple access to Postgres servers. Features include: + Syntax highlighting. + Tabbed based interface. + Support for executing multiple queries at once.
Download the installercertified by EDB for all supported PostgreSQL versions.
This installer includes the PostgreSQL server, pgAdmin; a graphical tool for managing and developingyour databases, and StackBuilder; a package manager that can be used to download and installadditional PostgreSQL tools and drivers. Stackbuilder includes management,integration, migration, replication, geospatial, connectors and other tools.
This installer can run in graphical, command line, or silent install modes.
The installer is designed to be a straightforward, fast way to get up and running withPostgreSQL on macOS.
Advanced users can also download azip archiveof the binaries, without the installer.This download is intended for users who wish to include PostgreSQL as part of another application installer.
Platform support
The installers are tested by EDB on the following platforms. They will generally work on newer versions of macOS as well:
PostgreSQL Version | 64-bit macOS Platforms |
---|---|
13 | 10.13 - 10.15 |
12 | 10.12 - 10.14 |
11 | 10.12 - 10.14 |
10 | 10.10 - 10.12 |
9.6 | 10.10 - 10.12 |
9.5 | 10.8 - 10.10 |
Postgres.app
Postgres.app is a simple, native macOS app that runs in the menubar without the need of an installer. Open the app, and you have a PostgreSQL serverready and awaiting new connections. Close the app, and the server shuts down.
Psql For Mac
Homebrew
PostgreSQL can also be installed on macOSusing Homebrew. Please see the Homebrewdocumentation for information on how to install packages.
A listof PostgreSQLpackages can be found using the Braumeister search tool.
MacPorts
PostgreSQL packages are also available for macOS from theMacPorts Project. Please see theMacPorts documentation for information on how to install ports.
A list ofPostgreSQL packagescan be found using the portfiles search tool on the MacPorts website.
Fink
PostgreSQL packages are available for macOS from theFink Project.Please see the Fink documentation for information on how to install packages.
A list ofPostgreSQL packagescan be found using the package search tool on the Fink website.
Postgres.app is a full-featured PostgreSQL installation packaged as a standard Mac app.It includes everything you need to get started:we’ve even included popular extensions like PostGIS for geo data and plv8 for JavaScript.
Postgres.app has a beautiful user interface and a convenient menu bar item.You never need to touch the command line to use it – but of course we do include all the necessary command line tools and header files for advanced users.
Postgres.app can install minor updates automatically, so you get bugfixes as soon as possible.
Installing Postgres.app
Download ➜ Move to Applications folder ➜ Double Click
If you don't move Postgres.app to the Applications folder, you will see a warning about an unidentified developer and won't be able to open it.
Click 'Initialize' to create a new server
Configure your $PATH to use the included command line tools (optional):
Done! You now have a PostgreSQL server running on your Mac with these default settings:
Host | localhost |
Port | 5432 |
User | your system user name |
Database | same as user |
Password | none |
Connection URL | postgresql://localhost |
To connect with psql, double click a database. To connect directly from the command line, type psql
. If you’d rather use a graphical client, see below.
NOTE: These instructions assume that you’ve never installed PostgreSQL on your Mac before.If you have previously installed PostgreSQL using homebrew, MacPorts, the EnterpriseDB installer, consider removing other PostgreSQL installations first.We also have instructions for upgrading from older versions of Postgres.app.
Graphical Clients
Postgres.app includes psql
, a versatile command line client for PostgreSQL.But it’s not the only option; there are plenty of great graphical clients available for PostgreSQL.Two popular tools are:
pgAdmin 4 is a feature rich open source PostgreSQL client.It has support for almost every feature in PostgreSQL.The only downside is that the cross-plattform UI really doesn’t live up to the expectations of a native Mac app.
Postico on the other hand, is a very modern Mac app.It’s made by the same people that maintain Postgres.app, and we think you’ll like it! We put a lot of effort into making it a joy to use.However, it doesn’t have the extensive feature set of pgAdmin, and it’s a commercial app rather than open source.
Aside from those two options, there are a lot more to choose from! Check the documentation for a list of amazing Mac apps for PostgreSQL.
How to connect
After your PostgreSQL server is up and running, you’ll probably want to connect to it from your application.Here’s how to connect to PostgreSQL from popular programming languages and frameworks:
To connect from PHP, make sure that it supports PostgreSQL. The version included with macOS doesn't support PostgreSQL. We recommend MAMP for an easy way to install a current version of PHP that works.
You can use PDO (object oriented):
Or the pg_connect() functions (procedural):
To connect to a PostgreSQL server with Python, please first install the psycopg2 library:
Django
In your settings.py, add an entry to your DATABASES setting:
Macos Postgresql
Flask
When using the Flask-SQLAlchemy extension you can add to your application code:
SQLAlchemy
To install the pg gem, make sure you have set up your $PATH correctly (see Command-Line Tools), then execute the following command:
Rails
In config/database.yml, use the following settings:
Sinatra
In config.ru or your application code:
ActiveRecord
Install the activerecord gem and require 'active_record', and establish a database connection:
DataMapper
Install and require the datamapper and do_postgres gems, and create a database connection:
Sequel
Install and require the sequel gem, and create a database connection:
Postgres App Windows
- Download and install the PostgreSQL JDBC driver
- Connect to the JDBC URL jdbc:postgresql://localhost
For more information see the official PostgreSQL JDBC documentation.
libpq is the native C client library for connecting to PostgreSQL. It's really easy to use:
Now compile the file with clang and run it:
You can just use the C API in Swift! First include libpq in your bridging header:
Then make sure to link with libpq.
On iOS, you'll need to build libpq yourself.
On macOS you can use the system provided libpq (does not support SSL) or use libpq provided by Postgres.app by adding the following build settings:
Other Linker Flags | -lpq |
---|---|
Header Search Paths | /Applications/Postgres.app/Contents/Versions/latest/include |
Library Search Paths | /Applications/Postgres.app/Contents/Versions/latest/lib |
Now you can use the libpq C library to connect to PostgreSQL:
Support
We have a list of common problems in the troubleshooting section in the documentation.
Postgres App For Mac Os
For general questions concerning PostgreSQL, have a look at the official PostgreSQL documentation.
If you have a question concerning Postgres.app that is not answered by the Postgres.app documentation,you can ask @PostgresApp on Twitter, or open an issue on GitHub.
When reporting bugs, let us know which version of Postgres.app & macOS you are using, and be sure to include detailed error messages, even if your issue seems similar to another one.
License
Postgres.app, PostgreSQL, and its extensions are released under the PostgreSQL License. The released binaries also include OpenSSL (OpenSSL License), PostGIS (GPLv2), and plv8 (3 clause BSD).
Postgres.app is maintained by Jakob Egger and Chris Pastl. It was originally created by Mattt Thompson.