PostgreSQL för MacOS

100x58_1Mitt intresse för PostgreSQL (PSQL) beror på att jag skapar en plattform som ska ha stöd för de mest kända databaserna, PostgreSQL är en av dem. När jag programmerar i övrigt så använder jag aldrig PSQL för den har paradoxalt nog för många finesser som du tvingas ta ställning till när du egentligen bara vill skapa en databas men en tabell och några index. PSQL skulle nog bli mer populär om den kom i en enklare version där bra-nog är ledord.

I min plattform kommer du enkelt att kunna använda bland annat PostgreSQL, men det kräver att den är installerad och fungerar. Här berättar jag hur du kommer igång på MacOS 10.11.5

Allmänt om PSQL
Hemsida: https://www.postgresql.orgWikipedia: https://en.wikipedia.org/wiki/PostgreSQL

Operativsystem
Den här guiden är för programmerare på MacOS.
Kör man Ubuntu installeras allt med apt-get.
Kör man Windows finns det binärfiler att ladda ned från PostgreSQLs hemsida.

Brew
Brew är en pakethanterare för MacOS som du kan behöva installera.

Är PSQL installerad
which psql
Om den är installerad så får du sökvägen till psql

Är psql startad?
ps aux | grep postgres

Vilken Version?
/usr/local/bin/psql –version
psql (PostgreSQL) 9.5.3

Mer information
Du får en del information från Brew.
brew: brew info postgres

Installera psql
brew install postgres

Starta psql när datorn starta
brew services start postgresql

Hantera psql-database
pgAdmin3, https://www.pgadmin.org/download/macosx.php
PSequel, http://www.psequel.com/

Anslutning
Detailjer från Postgre: psql -?
Titta längst ned så ser du ”Connection details”.
Lista databaser: psql -l

Ansluta med pgAdmin3
Maintenance DB: postgres
Username:
Password:

Inställningar
Inifrån pgAdmin3 kan du köra ett sql-uttryck för att få sökvägen till konfigurationefilen.
SHOW config_file;
Min konfigurationsfil är här: ”/usr/local/var/postgres/postgresql.conf”

Användbara SQL-uttryck
CREATE DATABASE main WITH ENCODING=’UTF8′ CONNECTION LIMIT=-1;
DROP TABLE public.main;
CREATE TABLE public.main
(
path character varying(127)[], — Path
bubble text — Contents
)
WITH ( OIDS=FALSE);

ALTER TABLE public.main OWNER TO peterlembke;
COMMENT ON COLUMN public.main.path IS ’Path’;
COMMENT ON COLUMN public.main.bubble IS ’Contents’;

DROP INDEX public.path;
CREATE UNIQUE INDEX path ON public.main USING btree (path COLLATE pg_catalog.”default”);

 

EOD