PGCenter - PostgreSQL Datenbank Statistiken und Leistungsdaten auf einen Blick

PostgreSQL ist die Tage in Version 9.5 erschienen (siehe Artikel). 
Egal ob neues oder altes DB System, eine Analyse der Performance und Auswertung von Zugriffszeiten- oder daten, usw. ist bei vielen Anwendungsszenarien unerlässlich.

PGCenter

Eine Auswertungsmöglichkeit bringt PostgreSQL selbst mit. Unter dem Prefix "pg_stats" stehen verschiedene Mechanismen für Auswertungen zur Verfügung.

Weiter geht PGCenter. Es bündelt diese Auswertungen in einer Ausgabe, die der Prozessüberwachung top ähnelt. Dies sorgt für eine schnelle Übersicht und bringt zusätzlich die Möglichkeit selbst Aktionen auszuführen.

Die Hauptfunktionen von PGCenter werden wie psql Befehle ausgeführt und bieten momentan folgende Möglichkeiten:

postgresql

  • top-like interface
  • use same connection options as with psql
  • show current system load and cpu/memory/swap usage
  • show input/output statistics for devices and partitions like iostat
  • show network traffic statistics for network interfaces like nicstat
  • show current postgres state (connections state, longest transaction, autovacuum)
  • show statistics about tables, indexes, functions, activity, replication
  • show pg_stat_statements statistics: calls, rows
  • show pg_stat_statements statistics: cpu timings, io timings
  • show pg_stat_statements statistics: blks i/o (hits, reads, dirtied, written, temp)
  • show relations sizes info
  • configuration files editor and postgres reload
  • log files viewing (full log or tail)
  • cancel/terminate queries or processes by pid or whole group
  • query reporting


Installation von PGCenter Statistik

Referenzsystem ist ein Ubuntu Server 14.04. Weitere Installationsarten werden auf der Homepage beschrieben.

sudo add-apt-repository ppa:lesovsky/pgcenter
sudo apt-get update
sudo apt-get install pgcenter

Benutzung von PGCenter

Wie bereits oben erwähnt, ist die Nutzung von PGCenter an psql Befehle angelehnt. Damit alle Daten ausgewertet werden können, muss ein superuser account wie "postgres" verwendet werden, ansonsten kann es zu Einschränkungen kommen

Eine Möglichkeit die PGCenter Konsole zu starten wäre beispielsweise

sudo -u postgres pgcenter

Hier wird das Tool direkt als Benutzer Postgres gestartet.

pgcenterpgcenter

Befehle für PGCenter

Eine interaktive Bedienung erfolgt mit folgenden Befehlen (Hilfe mit F1).


    general actions:
      a,d,i,f,r       mode: 'a' activity, 'd' databases, 'i' indexes, 'f' functions, 'r' replication,
      s,t,T           's' sizes, 't' tables, 'T' tables IO,
      x,X,c,v         'x' stmt timings, 'X' stmt general, 'c' stmt IO, 'v' stmt temp.
      Left,Right,/    'Left,Right' change column sort, '/' change sort desc/asc.
      C,E,R           config: 'C' show config, 'E' edit configs, 'R' reload config.
      p                       'p' start psql session.
      l               'l' open log file with pager.
      N,Ctrl+D,W      'N' add new connection, Ctrl+D close current connection, 'W' write connections info.
      1..8            switch between consoles.
    subscreen actions:
      B,I,L           'B' iostat, 'I' nicstat, 'L' logtail.
    activity actions:
      -,_             '-' cancel backend by pid, '_' terminate backend by pid.
      >,.             '>' set new mask, '.' show current mask.
      Del,Shift+Del   'Del' cancel backend group using mask, 'Shift+Del' terminate backend group using mask.
      A               change activity age threshold.
      G               get report about query using hash.

    other actions:
      , Q             ',' show system tables on/off, 'Q' reset postgresql statistics counters.
      z,Z             'z' set refresh interval, 'Z' change color scheme.
      space           pause program execution.
      F1              show help screen.
      q               quit.

Fazit

PGCenter bindet sich gut in die Umgebung ein und liefert viele wichtige Werte rund um einen PostgreSQL Datenbankbetrieb. Anwender, welche mit "top" arbeiten, werden pgcenter mögen.

https://github.com/lesovsky/pgcenter

PostgreSQL 9.5 - So gelingt die Installation des Datenbanksystems auf Ubuntu Server

Gestern ist eine neue PostgreSQL Version erschienen. Das offene Datenbanksystem bringt diverse Neuerungen mit sich.

So beherrscht PostgreSQL 9.5 unter anderem UPSERT. Dabei handelt es sich um eine Erweiterung des INSERT-Befehls mit ON CONFLICT UPDATE. Das heißt UPSERT erstellt einen neuen Datensatz oder ändert bereits vorhandene ohne zusätzliche Abfragen.

postgresql

Zugriffsrechte auf Zeilenebene können nun ebenfalls vergeben werden. (Row Level Security). Für die Big Data Zukunft sind ebenfalls einige Funktionen hinzugekommen. 

Ein detaillierter Überblick ist unter https://wiki.postgresql.org/wiki/PostgreSQL_9.5 zu finden.


PostgreSQL 9.5 unter Ubuntu, Mint oder ElementaryOS installieren

In den Standardrepositories des Ubuntu Server 14.04 ist momentan nur PostgreSQL 9.3 verfügbar. Darum muss bei einer Installation der Version 9.5 etwas Hand angelegt werden.

wget -O - http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | sudo apt-key add -

sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ trusty-pgdg main 9.5" >> /etc/apt/sources.list.d/postgresql.list'

sudo apt-get update

sudo apt-get install postgresql-9.5

Eine Kontrolle der erfolgreichen Installation kann mit netstat gemacht werden. Hier sollte auf Port 5432 der Postgres Dienst laufen

netstat -lnp

Weitere erste Schritte können der Anleitung zu PostgreSQL 9.4 entnommen werden.


Das könnte die interessieren: