Instalace PostgreSql
Instalace PostreSql
Vytvoříme soubor se zdroji pro instalaci
echo 'deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main' > /etc/apt/sources.list.d/pgdg.list
přepneme se do složky root
cd /root
získáme klíč pro ověření zdrojů
wget https://www.postgresql.org/media/keys/ACCC4CF8.asc
a přidáme ho do apt
apt-key add ACCC4CF8.asc
aktualizujeme apt
apt-get update
a instalujeme PostgreSql podle dostupné verze
apt-get -y install postgresql-9.6 postgresql-client-9.6 postgresql-contrib-9.6
Instalace verze 9.5
Nainstalujeme PostgreSql server
apt-get -y install postgresql postgresql-contrib
Pokud budeme používat databázi ve spojení s webovými aplikacemi, nainstalujeme také rozšíření pro PHP. Záleží samozřejmě na verzi PHP, já používám PHP7
apt-get -y install php7.0-pgsql
nakonfigurujeme uživatele postgres, který byl vytvořen během instalace a nastavíme mu heslo
passwd postgres
a restartujeme Postgresql
systemctl restart postgresql
přihlásíme se jako uživatel postgres
sudo su
su - postgres
a spustíme psql shell
psql
nastavíme heslo databáze pro uživatele postgres a ukončíme psql shell
postgres=# \password
Enter new password:
Enter it again:
postgres=# \q
zadáním příkazu exit se vrátíme k původnímu přihlášení
Úprava nastavení po instalaci
Abychom se mohli k PostgreSql serveru připojit se vzdálených počítačů, musíme upravit konfiguraci PostgreSql. Umístění souborů odpová instalované verzi.
Nejprve upravíme soubor /etc/postgresql/9.5/main/pg_hba.conf
nano /etc/postgresql/9.5/main/pg_hba.conf
kde na konec souboru přidáme
host all all 192.168.30.0/32 md5
tím povolíme připojit se všem z definovaného rozsahu adres. Dále musíme nastavit, aby PostgreSql naslouchal na všech rozhraních, které má přiděleny, případně specifikovat port pro komunikaci. Proto editujeme soubor /etc/postgresql/9.5/main/postgresql.conf
nano /etc/postgresql/9.5/main/postgresql.conf
kde upravíme listen_addresses = ‘localhost’ na listen_addresses = ‘*’
#---------------------------------------------------------------------- # CONNECTIONS AND AUTHENTICATION #---------------------------------------------------------------------- # - Connection Settings - listen_addresses = '*' # what IP address(es) to listen on; # comma-separated list of addresses; # defaults to 'localhost'; use '*' for all # (change requires restart) port = 5432 # (change requires restart) max_connections = 100 # (change requires restart)
Po těchto úpravách restartujeme PostgreSql
systemctl restart postgresql
Po restartu budeme schopni se připojit na PostgreSql z windows pomocí programu PgAdmin verze 4
Upgrade Postgres 9.5 na verzi 9.6
Postup aktualizace na novou verzi se skládá ze čtyř základních kroků.
- Instalace Postgres 9.6
- Zastavení Postgres 9.6
- Upgrade Postgres 9.5
- Odstranění Postgres 9.5
Zastavení Postgres 9.6
Použitím příkazu
dpkg -l | grep postgresql
si zobrazíme, jaké verze Postgres máme instalovány a příkazem pg_lsclusters
si zobrazíme stav jednotlivých verzí. Zadáním příkazu
pg_dropcluster 9.6 main --stop
zastavíme Postgres 9.6
Upgrade Postgres 9.5
Před spuštěním upgrade zkontrolujeme, zda nejsou aktivní připojení. K tomu se přepneme jako uživatel postgres
su - postgres
a zadáme příkaz
psql -c '\x' -c 'SELECT * FROM pg_stat_activity;'
pokud nám vrátí pouze jeden záznam, je vše v pořádku. Zadáním
exit
se odhlásíme a můžeme spustit upgrade
pg_upgradecluster 9.5 main
výsledek a stav po upgrade si zobrazíme zadáním
pg_lsclusters
Odstranění Postgres 9.5
Pro odstranění Postgres 9.5 spustíme příkaz
pg_dropcluster 9.5 main