Skip to content

PostgreSQL 12 und pgAdmin 4 unter Ubuntu installieren oder aktualisieren

Nach gut einem Jahr wurde vor wenigen Tagen die Version 12 der Datenbanklösung PostgreSQL veröffentlicht.

Das Release steht im Zeichen der Performance und bietet beispielsweise mit REINDEX CONCURRENTLY nun eine Möglichkeit Indizes im laufenden Betrieb ohne Einbußen zu erneuern.

Weitere Änderungen sind im Changelog zu finden. Dort finden sich zusätzlich Anweisungen, welche für die ein oder andere Migration relevant sein dürften.

postgres_logo

PostgreSQL 12 unter Ubuntu installieren

Bei der Aktualisierung der vorhandenen Version hat sich nicht allzu viel getan. Der Vorgang ist analog zu Version 11.
 

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

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

sudo apt update

sudo apt install postgresql-11

Nun kann überprüft werden, ob das System korrekt funktioniert. Dazu wird in die Postgres Console gewechselt.

sudo -u postgres psql

postgres=# \conninfo
You are connected to database "postgres" as user "postgres" via socket in "/var/run/postgresql" at port "5432".

postgresql12


PostgreSQL 11 auf PostgreSQL 12 aktualisieren

Nachdem die neueste Version installiert wurde, kann die alte im folgenden migriert werden.

Unbedingt eine Sicherung der vorhandenen Datenbanken machen.

pg_dumpall > /temp/sicherung

Noch einmal die Installationsinfos anzeigen lassen.

sudo pg_lsclusters

Ver Cluster Port Status Owner    Data directory              Log file
11  main    5432 online postgres /var/lib/postgresql/11/main /var/log/postgresql/postgresql-11-main.log

Sollte eine neue Version bereits installiert sein, muss diese zunächst gestoppt werden.

sudo pg_dropcluster 12 main --stop

Danach das alte Cluster migrieren.

sudo pg_upgradecluster 11 main

Sollte der Vorgang erfolgreich gewesen sein, kann das alte Cluster entfernt werden.

sudo pg_dropcluster 11 main


pgAdmin_4

pgAdmin 4 für PostgreSQL 12 installieren

Für viele bietet sich zur Verwaltung eine grafische Oberfläche an, hier kann der Quasistandard pgAdmin genutzt werden.

Das Tool hat sich in den letzten Jahren gut entwickelt und viele Kinderkrankheiten überwunden.

Das benötigte Repository ist durch die vorhergehende PostgreSQL Installation bereits vorhanden.

sudo apt install pgadmin4 pgadmin4-apache2

Das erste Paket installiert das Tool an sich, das zweite installiert das Webinterface dazu. Bei der Installation werden Mailadresse und Passwort abgefragt, dies wird später für den Login benötigt.

Die fertige Installation kann über den Browser aufgerufen werden.


http://localhost/pgadmin4/

 

Anleitung: PostgreSQL 9.x Installation auf Postgres 10 aktualisieren

PostgreSQL 10 ist nun seit ein paar Monaten auf dem Markt. Somit kann an ein Update der bestehenden Infrastruktur gedacht werden.

Diese kurze Anleitung soll zeigen, wie ein Update einer 9.x Installation auf die aktuelle Version 10 unter Ubuntu Server gelingt.

PostgreSQL Server 9.x auf Version 10 aktualisieren

Zunächst wird das aktuelle Repository hinterlegt.

sudo echo 'deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main' > /etc/apt/sources.list.d/pgdg.list

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc |   sudo apt-key add -

sudo apt-get update

Nun kann die aktuelleste Version installiert werden

sudo apt-get dist-upgrade

oder

sudo apt install postgresql-10

Zur Überprüfung ob auch beide Versionen vorhanden sind können die aktiven DB Cluster aufgelistet werden

pg_lsclusters

ls_clusterNun kann das neue 10er Cluster angehalten und das bestehende aktualisiert werden.

sudo pg_dropcluster 10 main --stop

sudo pg_upgradecluster 9.5 main

Danach sollte wieder ein kurzer Check gemacht werden, bevor das alte System entfernt wird. Ich prüfe hier nur den Prozess.

Am besten die Datenbanken oder Anwendungen direkt auf Funktion prüfen, bevor die alte Version entfernt wird.

ps aux

sudo pg_dropcluster 9.5 main

postgres

Elastix - Neues Zertifikat erstellen und einbinden

Ein neues Zertifikat für eine Elastix Maschine ist hin und wieder fällig. Bekanntlich handelt es sich dabei um ein CentOS System mit Apache, welches somit recht einfach mit einem neuen Zertifikat versehen werden kann. Praktisch geht das sogar mit einem Oneliner.

openssl req -x509 -nodes -sha256 -days 1825 -newkey rsa:4096 -keyout /etc/pki/tls/private/localhost.key -out /etc/pki/tls/certs/localhost.crt
-subj "
/C=--/ST=SomeState/L=SomeCity/O=SomeOrganization/OU=SomeOrganizationalUnit/ CN=localhost.localdomain/emailAddress=root@localhost.localdomain"

Damit erzeugt ihr ein neues Zertifikat, welches auch gleich richtig eingebunden wird, aber Vorsicht, die vorhandenen Zertifikate werden mit diesem Befehl überschrieben.

Elastix

Solltet ihr andere Dateinamen verwenden, dann muss der Pfad in der Konfiguration zusätzlich angepasst werden

sudo nano /etc/httpd/conf.d/ssl.conf

 SSLCertificateFile /ich/bin/der/pfad/neues_cert.crt

sudo service httpd restart 

Elastix - Aktuelle Openfire Version (9.3.x) installieren oder aktualisieren

Bekanntermaßen hat die Telefonlösung Elastix neben der eigentlichen Telefonsoftware Asterisk, auch noch Module wie Hylafax oder Openfire mit an Bord. Bei letzterem handelt es sich um den OpenSource Nachfolger des Instant Messenger Servers "Wildfire". 

Elastix

Der XMPP Server wird fest mit Elastix ausgeliefert und weist nach einer Standard Installation leider nicht die aktuellste Version auf (3.7.x).

Um den vollen Funktionsumfang neuerer Versionen nutzen zu können, ist es sinnvoll Openfire zu aktualisieren.

Mit Hilfe weniger Befehler kann dies im Beispielsystem (CentOS) berwerkstelligt werden.

Überprüfen, welche Version aktuell installiert ist

rpm -qa |grep openfire

Openfire Dienst stoppen

service openfire stop

Sicherung - Bei Bedarf kann nun das Openfire Verzeichnis gesichert werden "opt/openfire", da nach einer erneuten Paketinstallation die Konfiguration verloren geht. Gleiches gilt für die Datenbank

sudo mkdir -p /opt/openfirebackup

sudo cp /opt/openfire /opt/openfire.backup

sudo mysqldump –u benutzer -p openfire > /tmp/openfire.backup.sql

Herunterladen und Installation der aktuellen Openfire Version

sudo wget http://www.igniterealtime.org/downloadServlet?filename=openfire/openfire-3.9.3-1.i386.rpm

sudo rpm -Uvf openfire-3.9.3-1.i386.rpm

Danach könnt ihr das aktuelle Openfire Setup über den Browser aufrufen

http://127.0.0.1:9090/login.jsp?url=%2Findex.jsp

Linux - VMware Tools in CentOS oder Ubuntu installieren

Bei Arbeiten mit ESXi Servern, ist es sinnvoll auf allen virtuellen Maschinen VMware Tools zu installieren. Auf Windows Maschinen ist die kein Problem, ein Rechtsklick auf die virtuelle Maschine und "VMware Tools installieren/aktualisieren" und schon sind die Tools quasi aktiv.

vmtools-installieren

Bei Linux Geräten müssen neben diesem ersten Schritt noch ein paar weitere ausgeführt werden.

VMware Tools in CentOS installieren

yum install make gcc kernel-devel kernel-headers glibc-headers perl

mkdir /mnt/cdrom

mount /dev/cdrom /mnt/cdrom

cd /tmp/

tar xvf /mnt/cdrom/VMwareTools-9.*.tar.gz

cd vmware-tools-distrib/

./vmware-install.pl -d

umount /mnt/cdrom/

Der Parameter "-d" hinter dem Perlskript bewirkt das automatische Bestätigen aller Abfragen während der Installation.

VMware Tools in Ubuntu installieren

Die Quick and Dirty Methode ist hier sicherlich die freie Alternative der VM Tools via sudo apt-get install open-vm-tools zu installieren. Wer dennoch auf die offizielle Variante zurückgreifen möchte, der führt folgendes aus.

sudo apt-get install make gcc

sudo mkdir cdrom

sudo mount /dev/cdrom /mnt/cdrom

cd /tmp

ls -l /mnt/cdrom/

sudo tar zxf /mnt/cdrom/VMwareTools-9.*.gz

cd vmware-tools-distrib/

./vmware-install.pl -d

umount /mnt/cdrom/