All Projects → petere → Homebrew Postgresql

petere / Homebrew Postgresql

🐘 PostgreSQL formulae for the Homebrew package manager

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to Homebrew Postgresql

Psql2csv
Run a query in psql and output the result as CSV.
Stars: ✭ 153 (-40.7%)
Mutual labels:  postgresql, homebrew
Migrations
SQL database migrations for Golang go-pg and PostgreSQL
Stars: ✭ 251 (-2.71%)
Mutual labels:  postgresql
.dotfiles
💻 My settings for macOS, kitty, zsh, nvim, tmux, and more 🛠
Stars: ✭ 44 (-82.95%)
Mutual labels:  homebrew
waithax
An implementation of the waithax / slowhax 3DS Kernel11 exploit.
Stars: ✭ 64 (-75.19%)
Mutual labels:  homebrew
Pocket-Game-Maker-v0.83
由白枫开发的PSP AVG游戏引擎PGM。经白枫同意后,上传做教程之用。
Stars: ✭ 13 (-94.96%)
Mutual labels:  homebrew
m3diaLib-CTR
A C++ library for easier homebrew development for the Nintendo 3DS
Stars: ✭ 39 (-84.88%)
Mutual labels:  homebrew
StarDustCFWPack
StarDust es un Pack con los CFW actuales tipo AIO, Configurado con Atmosphere, SX OS Agrega también las app mas básicas para empezar y no preocuparse por nada
Stars: ✭ 83 (-67.83%)
Mutual labels:  homebrew
Fastboot3ds
A homebrew bootloader for the Nintendo 3DS that is similar to android's fastboot.
Stars: ✭ 258 (+0%)
Mutual labels:  homebrew
macOS-setup
Simple ansible playbook to install all software that you need to new macOS environment
Stars: ✭ 38 (-85.27%)
Mutual labels:  homebrew
dotfiles
🏠 dotfiles for my macOS environment
Stars: ✭ 17 (-93.41%)
Mutual labels:  homebrew
libstarlight
3DS Homebrew Application Framework
Stars: ✭ 28 (-89.15%)
Mutual labels:  homebrew
Blitz
Blitz is a 68030 based homebrew computer I designed over the course of nearly 3 years, starting in late 2017.
Stars: ✭ 31 (-87.98%)
Mutual labels:  homebrew
bottomless-block-barrage
Panel de Pon (Tetris Attack) clone for the 3ds.
Stars: ✭ 15 (-94.19%)
Mutual labels:  homebrew
dotfiles-legacy
. .✧ · 🌎 ✷ ✫ 🌙 · ✵ 🚀✵ * ✵ · 🌌✫ ✷ · ✧ .
Stars: ✭ 15 (-94.19%)
Mutual labels:  homebrew
Pcgen
PCGen Data Sets
Stars: ✭ 257 (-0.39%)
Mutual labels:  homebrew
Pingo
A tile painting puzzle game for the PS Vita
Stars: ✭ 17 (-93.41%)
Mutual labels:  homebrew
homebrew-chunkwm
Homebrew Tap for Chunkwm tiling window manage (https://github.com/koekeishiya/chunkwm)
Stars: ✭ 47 (-81.78%)
Mutual labels:  homebrew
homebrew-rmrec
Quick and simple command to remove a Homebrew package and its dependencies.
Stars: ✭ 31 (-87.98%)
Mutual labels:  homebrew
Golinks
🌐A web app that allows you to create smart bookmarks, commands and aliases by pointing your web browser's default search engine at a running instance. Similar to bunny1 or yubnub.
Stars: ✭ 258 (+0%)
Mutual labels:  homebrew
Xdebug Osx
Simple bash script to toggle xdebug on/off in OSX
Stars: ✭ 258 (+0%)
Mutual labels:  homebrew

Homebrew PostgreSQL things

These formulae allow installing multiple versions of PostgreSQL in parallel. This is similar to what you can do on certain Linux distributions, for example Debian.

To install something, first brew tap petere/postgresql and then brew install <formula>. Since there might be name overlaps with core Homebrew formulae, you should use fully qualified formula names like brew install petere/postgresql/postgresql-common.

Build Status

Details

Since PostgreSQL major releases have incompatible data directories and other occasional incompatibilities, it is useful for many developers to keep several major versions installed in parallel for development, testing, and production. So far, Homebrew had inconsistent support for that and did not provide the full range of supported major versions. This tap provides versioned formulae named [email protected], [email protected], etc. that you can install in parallel. Technically, these are "keg-only", which has the nice side effect that they are automatically installed in side-by-side directories /usr/local/opt/[email protected]/ etc.

To use the programs installed by these formulae, do one or more of the following, in increasing order of preference:

  • Call all programs explicitly with /usr/local/opt/[email protected]/bin/.... This will be boring in the long run.
  • Add your preferred /usr/local/opt/[email protected]/bin etc. to your path. Preferably to the front, to come before the operating system's PostgreSQL installation. This will work alright, but depending on your setup, it might be difficult to get everything on the OS to see the same path.
  • brew link -f the [email protected] formula you prefer to use.
  • Install the postgresql-common package (see below).

The versioned formulae can be installed alongside the main postgresql formula in Homebrew. But there will be a conflict if you do brew link -f or install postgresql-common, so in those cases you have to uninstall the main postgresql package first. This is not a problem, however, because the versioned packages provide the same functionality.

Build options

The standard postgresql formula in Homebrew is missing a number of build options and also has a number of build options that I find useless. These formulae enable all configure options that macOS can support, but also remove a number of Homebrew-level build options, to reduce complexity. I have also dropped supported for legacy macOS concerns, such as 32-bit Intel and PowerPC and really old macOS releases. Mainly because I can't test that anymore, YMMV.

postgresql-common cluster manager

postgresql-common is a port of the postgresql-common package from Debian, which contains programs that help manage these multiple versioned installations, and programs to manage multiple PostgreSQL instances (clusters). The port a bit experimental, but it works.

See /usr/local/opt/postgresql-common/README.Debian to get started. If you have used Debian or Ubuntu before, you'll feel right at home (I hope).

The general idea is that for server-side operations you use the special wrapper scripts pg_createcluster, pg_dropcluster, pg_ctlcluster, and pg_lsclusters instead of initdb and pg_ctl. The scripts take version numbers and instance names (which map to directory names). For example:

pg_createcluster 9.6 test
pg_ctlcluster 9.6 test start

See the respective man pages for details.

For client-side operations, to usual tools such as psql and pg_dump are wrapped to automatically use the right version for the instance they are connecting to, so you usually don't need to do anything special. See the man page pg_wrapper for details.

Extensions

To install extensions, I recommend Pex. It has support for multiple PostgreSQL installations and can easily support to the installation scheme used by these packages. Example:

pex -g /usr/local/opt/[email protected] install ip4r
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].