Hur man använder PostgreSQL med din Ruby on Rails-applikation på Ubuntu 20.04

PostgreSQL och Ruby on Rails på Ubuntu 20.04

Introduktion

PostgreSQL är en kraftfull och populär relationsdatabashanteringssystem (RDBMS) som används i många företags- och öppna källkodsapplikationer. Den kännetecknas av sin tillförlitlighet, skalbarhet och stöd för avancerade funktioner som samtidiga uppdateringar, inbyggda datatyper och stöd för JSON-data.

Ruby on Rails (RoR) är ett populärt webbutvecklingsramverk för att skapa robusta och eleganta webbapplikationer. RoR integreras sömlöst med PostgreSQL, vilket ger utvecklare ett robust och effektivt sätt att hantera datahantering.

Den här guiden kommer att vägleda dig genom processen att installera och konfigurera PostgreSQL och Ruby on Rails på Ubuntu 20.04-systemet. Vi kommer att täcka installationsprocessen, databasinställningar, Rails-applikationskonfiguration och viktiga tips för säker datatrafik.

Installation av PostgreSQL

1. Uppdatera systemet

Innan du installerar PostgreSQL, uppdatera ditt Ubuntu-system för att säkerställa att det har de senaste säkerhetskorrigeringarna:

sh
sudo apt update
sudo apt upgrade

2. Installera PostgreSQL

Använd följande kommando för att installera PostgreSQL-servern:

sh
sudo apt install postgresql

3. Starta och aktivera PostgreSQL-tjänsten

Starta och aktivera PostgreSQL-tjänsten så att den körs automatiskt vid start:

sh
sudo systemctl start postgresql
sudo systemctl enable postgresql

4. Skapa en databas och användare

Logga in på PostgreSQL-servern som användaren ”postgres”:

sh
sudo -u postgres psql

Skapa en databas för din Rails-applikation:

sql
CREATE DATABASE min_app;

Skapa en användare med behörighet att komma åt databasen:

sql
CREATE USER min_app_user WITH PASSWORD 'starkt_lösenord';
GRANT ALL PRIVILEGES ON DATABASE min_app TO min_app_user;

Ersätt ’starkt_lösenord’ med ett starkt lösenord.

Konfigurering av Ruby on Rails

1. Installera Ruby on Rails

Installera Ruby on Rails med följande kommando:

sh
sudo apt install ruby-full ruby-bundler
gem install rails -v 6.1.3

2. Skapa ett nytt Rails-projekt

Skapa ett nytt Rails-projekt:

sh
rails new min_app

3. Konfigurera databasen

Redigera filen config/database.yml i ditt Rails-projekt:

yml

config/database.yml

production:
adapter: postgresql
database: min_app
username: min_app_user
password: starkt_lösenord
host: localhost

Viktiga tips för säker datatrafik

1. Aktivera SSL

Aktivera SSL-kryptering för databasanslutningar för att förhindra dataavlyssning:

yml

config/database.yml

production:
...
sslmode: require

2. Använd säkra gem

Använd gem som verifierar och sanerar användarinmatning för att förhindra injektionsattacker, till exempel bcrypt för lösenordshantering och sanitize för datafiltrering.

3. Begränsa åtkomst

Begränsa åtkomsten till databasen till endast behöriga användare och IP-adresser med hjälp av brandväggsregler.

Slutsats

Genom att följa stegen i den här guiden har du nu framgångsrikt installerat och konfigurerat PostgreSQL med din Ruby on Rails-applikation på Ubuntu 20.04. Du har lärt dig hur du installerar och konfigurerar PostgreSQL, skapar en databas och en användare, konfigurerar Ruby on Rails för att ansluta till databasen och implementerar säkerhetsåtgärder för att skydda din data. Med de kunskaper du förvärvat här kan du nu bygga robusta och skalbara webbapplikationer med PostgreSQL och Ruby on Rails.

Vanliga frågor

1. Vilka är fördelarna med att använda PostgreSQL med Ruby on Rails?

* Hög prestanda och skalbarhet
* Avancerade funktioner som JSON-stöd och samtidiga uppdateringar
* Sömlös integration med Ruby on Rails

2. Kan jag använda en annan version av PostgreSQL eller Ruby on Rails?

Ja, men kom ihåg att beroende och kompatibilitetsproblem kan uppstå. Kontrollera dokumentationen för den version du vill använda.

3. Hur kan jag säkerhetskopiera och återställa min PostgreSQL-databas?

Använd kommandot pg_dump för att säkerhetskopiera och pg_restore för att återställa din databas.

4. Hur kan jag övervaka prestandan för min PostgreSQL-databas?

Använd verktyg som pgAdmin eller psql för att övervaka databasprestanda och identifiera eventuella problem.

5. Vad är skillnaden mellan adapter och database i konfigurationsfilen för databasen?

* adapter anger vilken typ av databas som ska användas (t.ex. postgresql).
* database anger namnet på databasen som ska anslutas till.

6. Hur kan jag felsöka problem med att ansluta till PostgreSQL från Ruby on Rails?

Kontrollera följande:
* Är PostgreSQL-servern igång och lyssnar på rätt port?
* Är användaren och lösenordet korrekta?
* Är SSL aktiverat (om nödvändigt)?

7. Hur kan jag uppgradera min PostgreSQL-installation?

Använd kommandot apt upgrade postgresql för att uppgradera PostgreSQL-servern.

8. Hur kan jag installera ytterligare PostgreSQL-tillägg?

Installera ytterligare moduler med hjälp av pakethanteraren (t.ex. sudo apt install postgresql-contrib).

9. Vilka är några bra resurser för att lära sig mer om PostgreSQL och Ruby on Rails?

* PostgreSQL-dokumentation: https://www.postgresql.org/docs/
* Ruby on Rails-guide: https://guides.rubyonrails.org/
* Railscasts: https://railscasts.com/

10. Hur kan jag få hjälp om jag stöter på problem?

* Ställ frågor på PostgreSQL-forumet: https://www.postgresql.org/community/forums/
* Sök i Rails-dokumentationen: https://guides.rubyonrails.org/5.2/
* Be om hjälp i Rails Discord-kanalen: https://discord.gg/rails