PostgreSQL:n asentaminen ja käyttäminen Ubuntu 18.04:ssä


PostgreSQL (lyhyesti Postgres) on avoimen lähdekoodin, tehokas, edistynyt, tehokas ja vakaa relaatio-asiakirjatietokantajärjestelmä. Se käyttää ja parantaa SQL-kieltä yhdistettynä lukuisiin ominaisuuksiin turvalliseen tietojen tallentamiseen ja hallintaan.

Se on tehokas, luotettava ja skaalautuva suurten, monimutkaisten tietomäärien käsittelyyn ja yritystason ja vikasietoisten ympäristöjen luomiseen, samalla kun varmistetaan korkea tietojen eheys. Postgres on myös erittäin laajennettavissa ominaisuuksilla, kuten indekseillä, mukana API:t, jotta voit kehittää omia ratkaisujasi tietojen tallennushaasteisiin.

Tässä artikkelissa selitämme, kuinka PostgreSQL asennetaan Ubuntu 18.04 -palvelimelle (toimii myös vanhemmissa Ubuntu-julkaisuissa) ja opimme peruskäyttötapoja.

Kuinka asentaa PostgreSQL Ubuntuun

Luo ensin tiedosto /etc/apt/sources.list.d/pgdg.list, joka tallentaa arkiston asetukset, tuo sitten arkistoavain järjestelmääsi, päivitä järjestelmäpakettiluettelo ja asenna Postgres-paketti. käyttämällä seuraavia komentoja.

sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
sudo apt install wget ca-certificates
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt update
sudo apt install postgresql-10 pgadmin4 

Kun postgres on asennettu, tietokantapalvelu käynnistyy automaattisesti ja voit vahvistaa kirjoittamalla seuraavan komennon.

sudo systemctl status postgresql.service

Kuinka käyttää PostgreSQL-rooleja ja tietokantoja

postgresissa asiakkaan todennusta ohjaa /etc/postgresql/10/main/pg_hba.conf-määritystiedosto. Oletustodennusmenetelmä on "vertais" tietokannan ylläpitäjälle, mikä tarkoittaa, että se hakee asiakkaan käyttöjärjestelmän käyttäjänimen käyttöjärjestelmästä ja tarkistaa, vastaako se pyydettyä tietokannan käyttäjänimeä pääsyn sallimiseksi paikallisille yhteyksille. (kuten seuraavassa kuvakaappauksessa näkyy).

Asennuksen aikana luotiin järjestelmän käyttäjätili nimeltä postgres ilman salasanaa. Tämä on myös oletusarvoinen tietokannan järjestelmänvalvojan käyttäjätunnus.

sudo vim /etc/postgresql/10/main/pg_hba.conf

Lisäksi postgres -kohdassa tietokannan käyttöoikeuksien hallinta suoritetaan roolien kautta. Roolia voidaan pitää joko tietokannan käyttäjänä tai tietokannan käyttäjien ryhmänä sen mukaan, miten rooli on määritetty.

Oletusrooli on myös postgres. Tärkeää on, että tietokantaroolit ovat käsitteellisesti täysin riippumattomia käyttöjärjestelmän käyttäjistä, mutta käytännössä ne eivät välttämättä ole erillisiä (esimerkiksi asiakkaan todentamisen osalta).

Tärkeää on, että roolit voivat omistaa tietokantaobjekteja ja määrittää näille objekteille oikeuksia muille rooleille hallitakseen, kenellä on pääsy mihinkin objekteihin. Lisäksi on mahdollista myöntää jäsenyys rooliin toiseen rooliin.

Jos haluat määrittää muut roolit käyttämään salattuja salasanoja niille määritettyjen tietokantojen hallintaan, oletusarvoisen postgres-roolin lisäksi sinun on vaihdettava rivi muotoon.

Then restart the postgresql service to apply the recent changes.
sudo systemctl restart postgresql

Kuinka käyttää PostgreSQL:ää Ubuntussa

Kun kaikki on asennettu, voit käyttää postgres-järjestelmätiliä seuraavalla komennolla, jossa -i-lippu käskee sudoa suorittamaan kohdekäyttäjän salasanatietokantamerkinnän määrittämän komentotulkin. kirjautumiskuori.

sudo -i -u postgres 
psql		#to launch the postgres shell program  
postgres=#

Jos haluat käyttää postgres-kuorta suoraan, käyttämättä ensin postgres-käyttäjätiliä, suorita seuraava komento.

sudo -i -u postgres psql

Voit sulkea postgres -ohjelman kirjoittamalla seuraavan komennon.

postgres=# \q

Luo PostgreSQL-tietokantarooleja

Luo uusi käyttäjärooli seuraavalla komennolla.

postgres=# CREATE ROLE tecmint;

Luo rooli LOGIN-attribuutilla käyttämällä seuraavaa komentoa (rooleja, joissa on LOGIN-attribuutti, voidaan pitää samana kuin tietokannan käyttäjiä).

postgres=#CREATE ROLE tecmint LOGIN;
OR
postgres=#CREATE USER name;	#assumes login function by default

Rooli voidaan luoda myös salasanalla. Tästä on hyötyä, jos olet määrittänyt asiakkaan todennusmenetelmän pyytämään käyttäjiä antamaan salatun salasanan muodostaessaan yhteyden tietokantaan.

postgres=#CREATE ROLE tecmint PASSWORD 'passwd_here'

Listaa olemassa olevat PostgreSQL-tietokantaroolit

Voit luetella olemassa olevat käyttäjäroolit käyttämällä mitä tahansa näistä komennoista.

postgres=# \du 				#shows actual users
OR
postgres=# SELECT rolname FROM pg_roles;

Pudota PostgreSQL-tietokantarooli

Pudottaaksesi olemassa olevat käyttäjäroolit, käytä DROP ROLE-komentoa kuvan mukaisesti.

postgres=# DROP ROLE tecmint;

Luo PostgreSQL-tietokanta

Kun olet luonut roolin tietyllä nimellä (esimerkiksi tecmint-käyttäjä), voit luoda tietokannan (samalla nimellä kuin rooli), jota kyseinen rooli hallinnoi kuvan mukaisesti.

postgres=# CREATE DATABASE tecmint;

Nyt voit hallita tietokantaa tecmint, kun käytät postgres-kuorta tecmint-roolina ja anna salasanasi seuraavasti.

sudo -i -u tecmint psql

Luo PostgreSQL-taulukko

Taulukoiden luominen on niin helppoa, että luomme testitaulukon nimeltä tekijät, joka tallentaa tiedot TecMint.com -kirjoittajista kuvan mukaisesti.

tecmint=>CREATE TABLE authors (
    code      char(5) NOT NULL,
    name    varchar(40) NOT NULL,
    city varchar(40) NOT NULL
    joined_on date NOT NULL,	
    PRIMARY KEY (code)
);

Kun olet luonut taulukon, yritä täyttää se tiedoilla seuraavasti.

tecmint=> INSERT INTO authors VALUES(1,'Ravi Saive','Mumbai','2012-08-15');

Voit tarkastella taulukkoon tallennettuja tietoja suorittamalla SELECT-komennon.

tecmint=> SELECT * FROM authors;

Listaa PostgreSQL-tietokantataulukot

Voit listata kaikki nykyisen tietokannan taulukot seuraavalla komennolla.

tecmint=>\dt

Poista/pudota PostgreSQL-taulukko

Voit poistaa taulukon nykyisestä tietokannasta DROP-komennolla.

tecmint=> DROP TABLE authors;

Listaa kaikki PostgreSQL-tietokannat

Voit luetella kaikki tietokannat käyttämällä jotakin seuraavista komennoista.

tecmint=>SELECT datname FROM pg_database;
OR
tecmint=>\list	#shows a detailed description 
OR
tecmint=>\l

Poista/pudota PostgreSQL-tietokanta

Jos haluat poistaa tietokannan, käytä esimerkiksi DROP-komentoa.

tecmint=>DROP DATABASE tecmint;

Vaihda toiseen PostgreSQL-tietokantaan

Voit myös vaihtaa tietokannasta toiseen helposti seuraavalla komennolla.

tecmint=>\connect database_name

Lisätietoja on PostgreSQL 10.4 -dokumentaatiossa.

Siinä se toistaiseksi! Tässä artikkelissa olemme selittäneet PostgreSQL-tietokannan hallintajärjestelmän asentamisen ja käytön Ubuntu 18.04:ssä. Voit lähettää meille kysymyksiä tai ajatuksia kommenteissa.