PostgreSQL-i andmebaasi installimine Debian 10-sse


PostgreSQL (mõnikord nimetatud kui Postgres) on kõige arenenum tõestatud arhitektuuriga avatud lähtekoodiga üldotstarbeline ja objektidega seotud andmebaaside süsteem, mis töötab kõigis suuremates operatsioonisüsteemides. See on suure jõudlusega, stabiilne, skaleeritav ja laiendatav andmebaasisüsteem, mis tagab hämmastava andmete terviklikkuse ja toetab võimsaid lisandmooduleid.

Oluline on see, et PostgreSQL võimaldab teil oma andmebaasi uuesti koostamata määratleda oma andmetüübid, lisada kohandatud funktsioone, isegi kirjutada koodi erinevatest programmeerimiskeeltest, näiteks C/C ++, Java jne.

PostgreSQL-i kasutavad tuntud tehnikaettevõtted nagu Apple, Fujitsu, Red Hat, Cisco, Juniper Network jne.

Selles artiklis me näitame teile, kuidas Debian 10-s PostgreSQL-i andmebaaside serverit installida, turvata ja konfigureerida.

  1. Installige Debian 10 (Buster) minimaalne server

PostgreSQL Serveri installimine Debian 10-sse

PostgreSQL andmebaasiserveri installimiseks kasutage APT vaikepaketi haldurit, mis installib PostgreSQL 11 serveri ja kliendi.

# apt install postgresql-11 postgresql-client-11

Debianis, nagu ka kõigis teistes deemonites, lähtestatakse Postgresi andmebaas kohe pärast paketi installimise lõppu, nagu on näidatud järgmisel ekraanipildil.

Postgresi andmebaasi tõelise vormindamise kontrollimiseks võite kasutada utiliiti pg_isready, mis kontrollib PostgreSQL-serveri ühenduse olekut järgmiselt.

# pg_isready 

Pealegi käivitatakse Systemd all teenus Postgres ka automaatselt ja lubatakse seda käivitada süsteemi käivitamisel. Veendumaks, et teenus töötab ja töötab, käivitage järgmine käsk.

# systemctl status postgresql

Järgnevad on muud kasulikud systemctl käsud Postgresi teenuse haldamiseks systemd all.

# systemctl start postgresql
# systemctl restart postgresql
# systemctl stop postgresql
# systemctl reload postgresql 		#this reloads the service configuration

PostgreSQL andmebaasi turvalisus ja konfigureerimine

Vaikimisi kasutab Postgres andmebaasile juurdepääsu lubade haldamiseks rollide mõistet ja andmebaasirollid on kontseptuaalselt täielikult operatsioonisüsteemi kasutajatest eraldi. Roll võib olla kasutaja või rühm ja rolli, millel on sisselogimisõigus, nimetatakse kasutajaks.

Värskelt initsialiseeritud süsteem sisaldab alati ühte eelnevalt määratletud rolli nimega postgres, sellel on sama nimi kui operatsioonisüsteemi kasutajakontol nimega postgres, mida kasutatakse psql (Postgres shell) ja muude andmebaasiprogrammide juurde pääsemiseks.

Postgresi süsteemi kasutajakonto pole parooliga kaitstud, selle kindlustamiseks saate parooli luua utiliidi passwd abil.

# passwd postgres

Samuti pole vaikimisi turvatud Postgresi roll (või haldusandmebaasi kasutaja, kui soovite). Samuti peate selle turvama parooliga. Nüüd lülituge postgres-süsteemi kasutajakontole ja postgres-rollile (pidage meeles, et peate määrama tugeva ja turvalise parooli), nagu näidatud.

# su - postgres
# psql -c "ALTER USER postgres WITH PASSWORD 'securepass_here';"

Seejärel väljuge postgresi kontolt, et jätkata juhendiga.

Kliendi autentimise seadistamine

Peamine Postgresi konfiguratsioonifail asub aadressil /etc/postgresql/11/main/postgresql.conf. Lisaks sellele failile kasutab Postgres veel kahte käsitsi redigeeritud konfiguratsioonifaili, mis kontrollivad kliendi autentimist.

Kliendi autentimist kontrollib konfiguratsioonifail /etc/postgresql/11/main/pg_hba.conf. Postgres pakub palju erinevaid klientide autentimismeetodeid, sealhulgas paroolipõhist autentimist. Kliendiühendused autentitakse kliendi hostiaadressi, andmebaasi ja kasutaja põhjal.

Kui otsustate kasutada paroolipõhist autentimist, saate rakendada ühte järgmistest meetoditest: md5 või parool, mis toimivad sarnaselt, välja arvatud viis, kuidas parool ühenduse kaudu edastatakse, nimelt vastavalt MD5-räsitud ja selge tekstiga.

Md5 parooliga autentimine hoiab ära häkkerite paroolilõpimise ja väldib paroolide serverisse salvestamist lihttekstina. Paroolimeetodit saab turvaliselt kasutada ainult siis, kui ühendus on kaitstud SSL-krüptimisega.

Selle juhendi jaoks näitame, kuidas konfigureerida md5 parooli autentimine kliendi autentimiseks.

# vim /etc/postgresql/11/main/pg_hba.conf 

Otsige järgmist rida ja muutke autentimismeetodiks md5 , nagu ekraanipildil näidatud.

local   all             all                                     md5

Salvestage muudatused faili ja väljuge sellest. Seejärel rakendage hiljutised muudatused, taaskäivitades teenuse Postgres järgmiselt.

# systemctl restart postgresql

Uue andmebaasi ja andmebaasi rolli/kasutaja loomine PostgreSQL-is

Selles viimases jaotises näitame, kuidas luua uus andmebaasikasutaja ja andmebaasiroll selle haldamiseks. Kõigepealt lülitage postgresi kontole ja avage Postgresi kest järgmiselt.

# su - postgres
$ psql

Andmebaasi "test_db" loomiseks käivitage järgmine SQL-i käsk.

postgres=# CREATE DATABASE test_db;

Seejärel looge andmebaasi kasutaja (sisselogimisõigustega roll), kes haldab uut andmebaasi järgmiselt.

postgres=#CREATE USER test_user PASSWORD ‘[email _here’;     #assumes login function by default

Test_db-ga ühenduse loomiseks kasutajana test_user käivitage järgmine käsk.

 
$ psql -d  test_db  -U test_user

Lisateavet leiate PostgreSQL 11 dokumentatsioonist.

Seda siis, kui selleks korraks! Selles juhendis oleme näidanud, kuidas installida, kaitsta ja konfigureerida PostgreSQL andmebaaside server Debian 10-s. Kas teil on küsimusi või mõtteid, mida jagada? Kasutage meiega ühendust saamiseks allolevat kommentaarivormi.