MusicBrainz NGS Database Install for Mac

From MusicBrainz Wiki
Jump to navigationJump to search

Setting up Postgres for Musicbrainz on a Mac System

Remove previous installation

sudo rm -r /usr/local/pgsql/ 

Install MacPorts

Now install gmake using MacPorts

port gmake

Download postgres8.3 source and unzip Build and install

gmake install
adduser postgres
mkdir /usr/local/pgsql/data
sudo chown postgres /usr/local/pgsql/data
su - postgres
/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1 &
/usr/local/pgsql/bin/createdb   musicbrainz
/usr/local/pgsql/bin/createuser musicbrainz

Build and install Postgres and Cube extension required by Musicbrainz

cd contrib/cube
sudo gmake install
cd /usr/local/pgsql/share/contrib
psql -d musicbrainz -U musicbrainz -f cube.sql

Reboot, start Postgres Server (because if built from source wont be started automatically, Best to put this command in a script in postgres users home dir)

sudo - postgres/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start

Install pgadmin

Run pgadmin check can connect to server then create user musicbrainz

I then followed [[1]] but had to make some changes for NGS release as follows

Just interested in mbdump and mpdump-cdstubs (cdstubs) and mbdump-derived (annotations, tags)

Create one database called musicbrainz and use it for both main and raw database

Edit admin/sql/CreateIndexes.sql removing the page indexes and musicbrainz_collate indexes

Also need to run admin/sql/vertical/rawdata/CreateTable.sql, CreatePrimaryKeys.sql and CreateIndexes.sql

for t in *; do echo `date` $t ; echo "\\copy $t from ./$t" | /usr/local/pgsql/bin/psql -U musicbrainz musicbrainz && mv $t ../done/; done; echo `date` Done

When build indexes modify IndexOptions.prepareDbConnection to not use a schema because schema is not used with the above instructions