Коришћење PostgreSQL-а са Ruby on Rails апликацијом на Ubuntu 20.04

Uvod

PostgreSQL se izdvaja kao jedan od najpriznatijih i najčešće korišćenih sistema za upravljanje relacionim bazama podataka (RDBMS). Njegove glavne odlike su robustnost, pouzdanost i skalabilnost, što ga čini primenljivim u raznovrsnim aplikacijama.

Ruby on Rails je popularan web framework, napisan programskim jezikom Ruby. Njegov cilj je da pojednostavi proces razvoja i održavanja web aplikacija, obezbeđujući standardan set elemenata i metoda koje se lako mogu prilagoditi različitim zahtevima.

U ovom priručniku, proći ćemo kroz proces integracije PostgreSQL baze podataka sa Ruby on Rails aplikacijom koja radi na Ubuntu 20.04 operativnom sistemu. Detaljno ćemo objasniti svaki korak – od instaliranja neophodnih komponenti, preko konfiguracije aplikacije, do verifikacije ispravnosti postavki.

Instalacija i konfiguracija PostgreSQL-a

Korak 1: Instalacija PostgreSQL-a

Otvorite terminal i osvežite listu paketa:

sudo apt update

Potom instalirajte PostgreSQL koristeći sledeću komandu:

sudo apt install postgresql

Korak 2: Kreiranje baze podataka i korisnika

Nakon uspešne instalacije PostgreSQL-a, potrebno je kreirati bazu podataka i korisnika koji će se koristiti za pristup aplikaciji. Povežite se na PSQL shell pomoću komande, unoseći svoje podatke kada se to od vas zatraži:

sudo -u postgres psql

Promenite „database_name“ sa nazivom vaše baze podataka. Promenite „username“ sa željenim korisničkim imenom, a „password“ sa lozinkom koju želite koristiti.

Zatim, kreirajte bazu podataka:

CREATE DATABASE database_name;

Nakon toga, kreirajte korisnika i dodelite mu potrebne privilegije:

CREATE USER username WITH PASSWORD 'password';
GRANT ALL PRIVILEGES ON DATABASE database_name TO username;

Korak 3: Instalacija Ruby i Ruby on Rails

Instalirajte potrebne verzije Ruby i Ruby on Rails:

sudo apt install ruby-full ruby-bundler
gem install rails -v 6.1.4

Povezivanje PostgreSQL-a sa Ruby on Rails aplikacijom

Korak 1: Kreiranje nove aplikacije

Kreirajte novu Ruby on Rails aplikaciju koristeći sledeću komandu:

rails new my_app --database=postgresql

Korak 2: Konfigurisanje baze podataka

Izmenite datoteku „config/database.yml“ i ažurirajte podešavanja baze podataka:

development:
adapter: postgresql
database: database_name
username: username
password: password
host: localhost

Korak 3: Generisanje modela

Generišite model (npr. „User“) koristeći naredbu:

rails generate model User

Korak 4: Migracija baze podataka

Pokrenite migraciju baze podataka:

rails db:migrate

Korak 5: Pokretanje aplikacije

Pokrenite aplikaciju koristeći sledeću komandu:

rails server

Zaključak

U ovom vodiču ste naučili kako da integrišete PostgreSQL bazu podataka sa Ruby on Rails aplikacijom na Ubuntu 20.04. Prošli smo kroz detaljne korake instalacije, konfiguracije i provere funkcionalnosti.

Integracija PostgreSQL-a i Ruby on Rails-a obezbeđuje pouzdano rešenje za čuvanje i upravljanje podacima u web aplikacijama. Korišćenjem PostgreSQL-a, možete koristiti njegove napredne karakteristike, kao što su integritet podataka, replikacija i kompleksni upiti, kako biste optimizovali performanse vaše aplikacije i osigurali bezbednost vaših podataka.

Česta pitanja

1. Koje su prednosti upotrebe PostgreSQL-a sa Ruby on Rails aplikacijama?
PostgreSQL pruža visoke performanse, pouzdanost, skalabilnost i napredne funkcije koje poboljšavaju funkcionalnost i ukupne performanse web aplikacija.

2. Kako da promenim lozinku za korisnički nalog baze podataka?
Da biste promenili lozinku korisničkog naloga baze podataka, povežite se sa PSQL shell-om koristeći svoje korisničko ime i postojeću lozinku. Unesite sledeću komandu, zamenjujući „username“ korisničkim imenom i „new_password“ novom lozinkom:

ALTER USER username WITH PASSWORD 'new_password';

3. Kako dodati nove tabele u bazu podataka?
Da biste dodali nove tabele u bazu podataka, možete izmeniti šemu baze podataka koristeći PSQL shell ili generisati migraciju baze podataka pomoću Ruby on Rails generatora modela:

rails generate model TableName
rails db:migrate

4. Kako se povezati sa bazom podataka koja je hostovana na udaljenom serveru?
U datoteci „config/database.yml“, konfigurišite podešavanje „host“ kako biste naveli udaljeni server i osigurali potrebne podatke za autentifikaciju.

5. Kako podesiti replikaciju baze podataka?
PostgreSQL podržava funkciju replikacije koja vam omogućava kreiranje kopija baze podataka na različitim serverima. Za konfiguraciju replikacije potrebni su dodatni koraci koji su detaljno opisani u PostgreSQL dokumentaciji.

6. Kako poboljšati performanse upita?
Za poboljšanje performansi upita, može se koristiti indeksiranje, materijalizovani pogledi i optimizacija upita. Dodatne smernice i alati za optimizaciju mogu se pronaći u PostgreSQL dokumentaciji.

7. Kako napraviti rezervnu kopiju baze podataka?
Rezervne kopije baze podataka mogu se napraviti pomoću komandi pg_dump ili korišćenjem alata za rezervne kopije specifičnih za operativni sistem.

8. Koji su resursi za dodatne informacije?
* PostgreSQL dokumentacija
* Ruby on Rails vodiči
* Forumi za podršku