Bii o ṣe le Fi sii ati Lo PostgreSQL lori Ubuntu 18.04


PostgreSQL (Postgres ni kukuru) jẹ orisun ṣiṣi, alagbara, ilọsiwaju, iṣẹ giga ati iduroṣinṣin eto isura data-iwe ibatan. O nlo ati mu ilọsiwaju ede SQL pọ pẹlu nọmba nla ti awọn ẹya fun ibi ipamọ data to ni aabo ati iṣakoso.

O munadoko, gbẹkẹle, ati iwọn fun mimu iwọn nla, awọn iwọn idiju ti data ati ṣeto ipele ile-iṣẹ ati awọn agbegbe ifarada-ẹbi, lakoko ti o rii daju iduroṣinṣin data giga. Postgres tun jẹ ohun ti o ga julọ pẹlu awọn ẹya bii atọka wa pẹlu awọn API nitorinaa o le ṣe agbekalẹ awọn solusan tirẹ lati yanju awọn italaya ipamọ data rẹ.

Ninu nkan yii, a yoo ṣalaye bi o ṣe le fi sori ẹrọ PostgreSQL lori olupin Ubuntu 18.04 (tun ṣiṣẹ lori awọn idasilẹ Ubuntu agbalagba) ati kọ diẹ ninu awọn ọna ipilẹ lati lo.

Bii o ṣe le Fi PostgreSQL sori Ubuntu

Ni akọkọ, ṣẹda faili kan /etc/apt/sources.list.d/pgdg.list eyiti o tọju ibi ipamọ ibi ipamọ, lẹhinna gbe wọle ibi ipamọ si eto rẹ, ṣe imudojuiwọn akojọ awọn idii eto rẹ ki o fi sori ẹrọ package Postgres nipa lilo awọn ofin atẹle.

$ 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 

Lọgan ti a ti fi sori ẹrọ postgres, iṣẹ data ti bẹrẹ laifọwọyi ati pe o le jẹrisi nipa titẹ titẹle atẹle.

$ sudo systemctl status postgresql.service

Bii o ṣe le Lo Awọn ipa PostgreSQL ati Awọn apoti isura data

Ni awọn ifiweranṣẹ, iṣakoso ijẹrisi ti iṣakoso nipasẹ /etc/postgresql/10/main/pg_hba.conf faili iṣeto. Ọna ifitonileti aiyipada ni\"ẹlẹgbẹ" fun olutọju ibi ipamọ data, itumo o gba orukọ olumulo ẹrọ ti alabara lati ẹrọ iṣiṣẹ ati awọn sọwedowo ti o ba baamu orukọ olumulo data data data ti a beere lati gba aaye laaye, fun awọn isopọ agbegbe (bi a ṣe han ni atẹle sikirinifoto).

Lakoko ilana fifi sori ẹrọ, akọọlẹ olumulo olumulo eto ti a pe ni postgres ni a ṣẹda laisi ọrọ igbaniwọle kan, eyi tun jẹ orukọ olumulo alabojuto ibi ipamọ data aiyipada.

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

Ni afikun, labẹ iṣakoso igbanilaaye iwọle ibi ipamọ data postgres ni ṣiṣe nipasẹ awọn ipa. A le ṣe akiyesi ipa kan bi boya olumulo ibi ipamọ data, tabi ẹgbẹ kan ti awọn olumulo ibi ipamọ data, da lori bii a ti ṣeto ipa naa.

Iṣe aiyipada tun jẹ awọn ifiweranṣẹ. Ni pataki, awọn ipa ibi ipamọ data jẹ eyiti a ko ni asopọ ni ọna pipe si awọn olumulo ẹrọ ṣiṣe, ṣugbọn ni iṣe wọn le ma ṣe ya sọtọ (fun apẹẹrẹ nigba ti o ba jẹ ijẹrisi alabara).

Ni pataki, awọn ipa le ni awọn nkan ipamọ data, ati pe o le fi awọn anfani lori awọn nkan wọnyẹn si awọn ipa miiran lati ṣakoso ẹni ti o ni iraye si awọn nkan wo. Ni afikun, o ṣee ṣe lati fun ẹgbẹ ni ipa si ipa miiran.

Lati tunto awọn ipa miiran lati lo awọn ọrọ igbaniwọle ti a papamọ lati ṣakoso awọn apoti isura infomesonu ti a fi si wọn, yatọ si ipa ifiweranṣẹ aiyipada, o nilo lati yi ila pada si.

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

Bii o ṣe le Lo PostgreSQL lori Ubuntu

Lọgan ti ohun gbogbo ṣeto, o le wọle si akọọlẹ eto postgres pẹlu aṣẹ atẹle, nibiti Flag -i sọ fun sudo lati ṣiṣe ikarahun ti a ṣalaye nipasẹ titẹsi ibi ipamọ data ọrọigbaniwọle olumulo ti o fojusi bi ikarahun iwọle kan.

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

Lati wọle si ikarahun postgres taara, laisi lakọkọ wọle si akọọlẹ olumulo postgres, ṣiṣe aṣẹ atẹle.

$ sudo -i -u postgres psql

O le dawọ/jade kuro ni awọn ifiweranṣẹ nipa titẹ pipaṣẹ wọnyi.

postgres=# \q

Ṣẹda ipa olumulo tuntun ni lilo pipaṣẹ atẹle.

postgres=# CREATE ROLE tecmint;

Lati ṣẹda ipa kan pẹlu ẹya LOGIN, lo aṣẹ atẹle (awọn ipa pẹlu ẹya LOGIN ni a le ka bakanna bi awọn olumulo ibi ipamọ data).

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

O tun le ṣẹda ipa pẹlu ọrọ igbaniwọle kan, eyi wulo ti o ba tunto ọna ijẹrisi alabara lati beere lọwọ awọn olumulo lati pese ọrọ igbaniwọle ti paroko nigbati o ba n sopọ si ibi ipamọ data.

postgres=#CREATE ROLE tecmint PASSWORD 'passwd_here'

Lati ṣe atokọ awọn ipa olumulo ti o wa, lo eyikeyi awọn ofin wọnyi.

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

Lati ju eyikeyi ipa olumulo ti o wa tẹlẹ lo aṣẹ DOP ROLE bi o ti han.

postgres=# DROP ROLE tecmint;

Lọgan ti o ba ti ṣẹda ipa pẹlu orukọ kan pato (fun apẹẹrẹ olumulo tecmint), o le ṣẹda ibi ipamọ data kan (pẹlu orukọ kanna bi ipa) eyiti yoo ṣakoso nipasẹ ipa yẹn bi o ti han.

postgres=# CREATE DATABASE tecmint;

Bayi lati ṣakoso tecmint data, wọle si ikarahun postgres bi ipa tecmint, pese ọrọ igbaniwọle rẹ bi atẹle.

$ sudo -i -u tecmint psql

Ṣiṣẹda awọn tabili jẹ irọrun, a yoo ṣẹda tabili idanwo kan ti a pe ni awọn onkọwe, eyiti o tọju alaye nipa awọn onkọwe TecMint.com, bi a ṣe han.

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)
);

Lẹhin ṣiṣẹda tabili kan, gbiyanju lati ṣe agbejade rẹ pẹlu diẹ ninu data, bi atẹle.

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

Lati wo data ti a fipamọ sinu tabili kan, o le ṣiṣe aṣẹ Yan.

tecmint=> SELECT * FROM authors;

O le ṣe atokọ gbogbo awọn tabili ninu aaye data lọwọlọwọ pẹlu aṣẹ atẹle.

tecmint=>\dt

Lati pa tabili kan ninu ibi ipamọ data lọwọlọwọ, lo aṣẹ DOP.

tecmint=> DROP TABLE authors;

Lati ṣe atokọ gbogbo awọn apoti isura data, lo eyikeyi awọn ofin wọnyi.

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

Ti o ba fẹ paarẹ data kan, lo pipaṣẹ DOP, fun apẹẹrẹ.

tecmint=>DROP DATABASE tecmint;

O tun le yipada lati ibi ipamọ data kan si omiiran ni rọọrun nipa lilo pipaṣẹ atẹle.

tecmint=>\connect database_name

Fun alaye diẹ sii, tọka si Iwe-ipamọ PostgreSQL 10.4.

Iyẹn ni fun bayi! Ninu nkan yii, a ti ṣalaye bi o ṣe le fi sori ẹrọ ati lilo eto iṣakoso data PostgreSQL lori Ubuntu 18.04. O le firanṣẹ awọn ibeere rẹ tabi awọn ero inu wa ninu awọn asọye.