Mentre il tempo e la tecnologia continuano a progredire, Internet occupa una posizione centrale nel mondo moderno. Ecco perché la maggior parte delle aziende e delle aziende hanno siti web e applicazioni per rappresentare l’aspetto online dei loro marchi. Indipendentemente dal fatto che tu sia il proprietario di un sito web piccolo o grande, hai bisogno dell’aiuto di alcuni strumenti per semplificare il tuo lavoro. Tra questi c’è il sistema di gestione del database.
Un sistema di gestione di database relazionale consente di classificare e organizzare correttamente i dati sul tuo sito web. In questo modo, è possibile trarre conclusioni significative da una montagna di informazioni digitali.
- Che cos’è PostgreSQL?
- Requisiti di preinstallazione
- Passo 1: Installa PostgreSQL
- Fase 2: Ruoli e database PostgreSQL
- Passa al tuo account Postgres
- Accedi a un prompt Postgres senza cambiare account
- Passo 3: Impostare un ruolo
- Passo 4: Crea un database
- Passo 5: Apri un nuovo prompt
- Passo 6: creazione e cancellazione della tabella
- Passaggio 7: Inserimento e modifica dei dati nella tabella
- Passaggio 8: Modifica delle colonne in una tabella
- Passo 9: Aggiorna i dati della tabella
- Conclusione
Che cos’è PostgreSQL?
PostgreSQL è un sistema di gestione di database open source molto popolare. Viene spesso utilizzato dai creatori di siti Web e applicazioni per una gestione più semplice. Questa piattaforma robusta implementa il linguaggio di interrogazione SQL.
Uno dei motivi della sua popolarità è la sua conformità standard. Un sistema di database conforme allo standard garantisce che i gestori di siti Web non si mettano nei guai con le autorità legali. Inoltre, PostgreSQL offre ai suoi utenti l’accesso a una serie di strumenti avanzati che consentono loro di archiviare, organizzare e implementare comodamente i propri dati. Alcune di queste funzionalità includono transazioni online sicure e controllo della concorrenza senza blocco.
In questa guida, discuteremo come è possibile installare e utilizzare PostgreSQL su un server cloud Ubuntu 18.04 su CloudSigma. Toccheremo anche alcune azioni amministrative di base che puoi condurre sul database. Cominciamo!
Requisiti di preinstallazione
Prima di passare ai passaggi per l’installazione di PostgreSQL, è necessario occuparsi dei prerequisiti. Inutile dire che, avrete bisogno di un server Ubuntu 18.04 per continuare. Dovrai configurare almeno uno dei tuoi server Ubuntu 18.04. Dopo aver eseguito la configurazione iniziale del server, è necessario confermare che il server ha un utente non root con autorizzazioni sudo. Dovrebbe anche avere un firewall. Puoi facilmente installare il tuo server seguendo il nostro tutorial sulla configurazione del tuo server Ubuntu. Quando questo è pronto, puoi iniziare a installare PostgreSQL sul tuo sistema.
Passo 1: Installa PostgreSQL
I server Ubuntu offrono già PostgreSQL come predefinito. Tutto quello che devi fare è aggiornare l’indice dei pacchetti locali e usare il sistema di pacchettizzazione apt. L’aggiornamento è necessario solo per il primo utilizzo in una sessione. Per installare il pacchetto Postgres, utilizzare questo comando:
sudo apt updatesudo apt install postgresql postgresql-contrib
L’aggiunta del pacchetto-contrib garantisce di ottenere alcune utilità e funzionalità extra.
Fase 2: Ruoli e database PostgreSQL
Ora che avete installato PostgreSQL sul vostro sistema, vediamo come si può mettere il sistema di gestione del database per un buon uso. Inizieremo familiarizzando con il concetto di “ruoli” nel database. Un’ ruolo ‘ in Postgres viene utilizzato ai fini dell’autenticazione e dell’autorizzazione. Questo termine comprende sia gli utenti che i gruppi. Al momento dell’installazione, il programma crea un nuovo account utente per te. Questo account è chiamato postgres ed è collegato al ruolo Postgres predefinito. È necessario accedere a questo account per utilizzare Postgres.
Quando si installa PostgreSQL, si collegano essenzialmente i ruoli Postgres con l’account di sistema Unix o Linux corrispondente. Ciò significa che Postgres utilizza il metodo di autenticazione ident. Pertanto, è possibile utilizzare il nome utente Unix o Linux per accedere al sistema se esiste un ruolo corrispondente in Postgres. Ecco alcune utilità che puoi estrarre dal tuo account Postgres:
-
Passa al tuo account Postgres
Se si desidera passare al proprio account postgres, è possibile farlo inserendo questo comando sul server:
sudo -i -u postgres
Digitare quanto segue per aprire un nuovo prompt Postgres:
psql
Ora puoi iniziare a interagire con le varie funzionalità del sistema PostgreSQL. Una volta terminato, è possibile chiudere il prompt e tornare al prompt dei comandi postgres Linux digitando questo:
\q
-
Accedi a un prompt Postgres senza cambiare account
È possibile aprire un prompt Postgres senza cambiare account. Ciò significa che verrà eseguito il comando direttamente con sudo. Invece di passare prima all’utente postgres, eseguiremo direttamente il comando psql con sudo:
sudo -u postgres psql
Come risultato di questo comando, sarai in grado di accedere direttamente a Postgres. Non ci sarà alcuna shell bash intermediario. È possibile uscire dalla sessione ancora una volta con il seguente comando:
\q
Passo 3: Impostare un ruolo
Finora, abbiamo lavorato con un singolo account postgres o “ruolo”. Questo ruolo è stato configurato nel database quando è stato installato PostgreSQL. Un sacco di tempo, troverete che avete bisogno di più di un ruolo su Postgres. Per soddisfare questa esigenza, è possibile creare nuovi ruoli nel database. Questo può essere fatto con l’aiuto del comando createrole. Ecco come è possibile impostare un nuovo ruolo o utente:
postgres@server:~$ createuser --interactive
Assicurati di aver effettuato l’accesso al tuo account postgres prima di eseguire il comando. L’aggiunta del flag-interactive significa che avrai la possibilità di nominare il ruolo e determinarne le autorizzazioni. Puoi decidere se vuoi o meno che questo particolare utente abbia le autorizzazioni di superutente. Inoltre, puoi eseguire questa azione senza passare dal tuo account. È possibile utilizzare sudo per questo scopo come segue:
sudo -u postgres createuser --interactive
Ti verrà quindi chiesto di inserire il nome del ruolo desiderato e determinare lo stato di superutente:
Oltre a quanto sopra, puoi anche creare altre specifiche per i nuovi ruoli. Per visualizzare i flag aggiuntivi, è possibile accedere alla pagina man con questo prompt:
$ man createuser
Passo 4: Crea un database
Ora che sai come aggiungere nuovi ruoli o utenti, puoi iniziare ad aggiungere nuovi database. Quando si crea un nuovo ruolo, il sistema di autenticazione Postgres tenterà automaticamente di collegarlo a un database con un nome corrispondente. Quindi, se hai nominato il nuovo ruolo sammy, puoi creare un database con il nome ‘sammy’ in modo che i due si connettano per impostazione predefinita. È possibile creare nuovi database con il comando createdb. Esegui questo comando se sei passato al tuo account postgres:
postgres@server:~$ createdb sammy
Utilizzare questo comando se si utilizza invece sudo:
$ sudo -u postgres createdb sammy
Passo 5: Apri un nuovo prompt
Per aprire un nuovo prompt con il tuo nuovo ruolo, devi prima accedere. Come accennato in precedenza, PostgreSQL utilizza il metodo di autenticazione basato su ident. Pertanto, avrai bisogno di un account utente Linux che abbia lo stesso nome di quello che hai inserito nel tuo ruolo e database Postgres. Non preoccupatevi nel caso in cui non si dispone di un tale utente Linux. È possibile creare facilmente uno con l’aiuto del comando adduser:
sudo adduser sammy
Assicurarsi di disconnettersi dall’utente postgres prima di eseguire questo comando. È necessario eseguire questo dal tuo account non root utilizzando sudo. Ora che hai aggiunto un nuovo utente con il nome del tuo ruolo Postgres, puoi passare ad esso. Digitare quanto segue per connettersi al database:
sudo -i -u sammypsql
È inoltre possibile eseguire questa azione in linea utilizzando:
sudo -u sammy psql
In definitiva, se tutto è configurato correttamente, sarai in grado di accedere automaticamente al tuo utente. Nel caso in cui si disponga di più percorsi, è possibile specificare a quale database si desidera connettersi con questo comando:
psql -d postgres
A volte, quando ci si connette a utenti o database non predefiniti, è possibile controllare le informazioni di connessione correnti. Per verificare le informazioni di connessione, digitare quanto segue:
sammy =# \conninfo
Vedrai qualcosa di simile:
Passo 6: creazione e cancellazione della tabella
Ora che le basi degli utenti e dei database sono fuori mano, possiamo passare ad alcune attività di gestione di base in Postgres. Uno dei più importanti è la creazione di un tavolo. È necessario essere in grado di creare una tabella in modo da poterla utilizzare per memorizzare i dati. Per creare una nuova tabella, digitare:
CREATE TABLE table_name ( column_name1 col_type (field_length) column_constraints, column_name2 col_type (field_length), column_name3 col_type (field_length));
Come puoi vedere nella sintassi precedente, non hai solo nominato la tua tabella, ma hai anche specificato il numero di colonne, il tipo di colonne e la lunghezza massima dei dati del campo. Se lo desideri, hai anche la possibilità di aggiungere vincoli di tabella per ciascuna colonna. Useremo attrezzature parco giochi come un campione di dati a scopo di spiegazione. È possibile sostituire questi valori con i propri quando si creano le tabelle Postgres:
CREATE TABLE playground ( equip_id serial PRIMARY KEY, type varchar (50) NOT NULL, color varchar (25) NOT NULL, location varchar(25) check (location in ('north', 'south', 'west', 'east', 'northeast', 'southeast', 'southwest', 'northwest')), install_date date);
Come da comando precedente, avrai una tabella composta da attrezzature per parchi giochi. La prima cosa nella tabella è l’ID dell’apparecchiatura che abbiamo specificato per essere del tipo seriale. Poiché questo è impostato per essere un intero di auto-incremento, il valore aumenterà in modo coerente. Abbiamo applicato il vincolo della chiave primaria a questa colonna, il che significa che ogni valore deve essere univoco e non può essere nullo. Non abbiamo specificato alcuna lunghezza di campo per la colonna equip_id o install_date. Il motivo per cui queste colonne non necessitano di una lunghezza di campo predeterminata è che il tipo di dati implica già la lunghezza.
Successivamente, abbiamo le colonne del tipo e il colore dell’attrezzatura per il parco giochi. Nessuno di questi valori può essere nullo. Il comando successivo è per una colonna di posizione. A causa del vincolo applicato, il valore può essere solo una delle otto opzioni fornite. L’ultimo comando crea una colonna data in modo da poter annotare quando l’apparecchiatura è stata installata nel parco giochi.
Una volta terminata la modifica della tabella, è possibile digitare quanto segue per visualizzarla:
sammy=# \d
Come visto sopra, troverai la tua tabella che elenca l’attrezzatura e un’altra voce chiamata playground_equip_id_seq. È della sequenza di tipo invece di tabella. Ciò viene visualizzato a causa del tipo seriale applicato alla colonna equip_id nella tabella. L’obiettivo di questa voce automatica è quello di tenere traccia dei numeri nella sequenza. Se lo desideri, puoi anche visualizzare solo il tuo tavolo senza la sequenza. Digitare:
Passaggio 7: Inserimento e modifica dei dati nella tabella
Dopo aver formattato la tabella, è possibile iniziare a inserire i dati in essa. Continuando l’esempio del passaggio precedente, possiamo aggiungere attrezzature come scivoli e altalene al tavolo. Nella sintassi, specificare la tabella e la colonna che si desidera modificare, quindi immettere i dati. Ecco un esempio:
sammy=# INSERT INTO playground (type, color, location, install_date) VALUES ('slide', 'blue', 'south', '2017-04-28');INSERT INTO playground (type, color, location, install_date) VALUES ('swing', 'yellow', 'northwest', '2018-08-16');
Ci sono alcune cose che devi fare molta attenzione con questo comando. Quando si immettono i dati, assicurarsi di inserire le virgolette attorno a ciascun valore. Inoltre, ricorda che i nomi delle colonne non devono essere inseriti tra virgolette. Se si desidera visualizzare le informazioni appena aggiunte, utilizzare il seguente comando:
sammy=# SELECT * FROM playground;
Ricorda che non è necessario immettere valori per la colonna equip_id poiché vengono generati automaticamente ad ogni nuova riga. Come puoi vedere nella tabella sopra, ogni riga ottiene un numero correttamente e automaticamente nella colonna equip_id. Nel caso in cui si desideri eliminare un elemento invece di aggiungerne uno, è possibile utilizzare il seguente comando:
sammy=# DELETE FROM playground WHERE type = 'slide';
Chiama nuovamente il tuo tavolo per vedere come è stata rimossa la voce:
sammy=# SELECT * FROM playground;
Passaggio 8: Modifica delle colonne in una tabella
Una volta creata una tabella, questa non è scolpita nella pietra. È possibile modificarlo aggiungendo ed eliminando colonne in caso di necessità. Ad esempio, se vogliamo aggiungere le date per l’ultima visita di manutenzione per ogni singolo pezzo di attrezzatura, possiamo farlo digitando:
sammy=# ALTER TABLE playground ADD last_maint date;
Evoca di nuovo il tuo tavolo e vedrai che hai aggiunto una nuova colonna ad esso. Tuttavia, poiché non hai ancora aggiunto alcun dato, sarà vuoto.
sammy=# SELECT * FROM playground;
Allo stesso modo, è anche possibile eliminare una colonna dalla tabella. Se la colonna viene eliminata, verranno rimossi anche tutti i suoi dati. Il resto del tavolo, tuttavia, non verrà modificato. Per rimuovere la colonna data ultima visita di manutenzione, utilizzare questo comando:
sammy=# ALTER TABLE playground DROP last_maint;
Passo 9: Aggiorna i dati della tabella
Sai come aggiungere nuove voci e rimuoverle dalla tabella, ma è possibile modificare quelle esistenti? È possibile aggiornare i valori delle voci esistenti con facilità. Innanzitutto, è necessario interrogare il record che si desidera aggiornare. Successivamente, si utilizzerà il comando SET per modificare il valore. Diciamo che vogliamo cambiare il colore dello swing in rosso. Ecco come farlo:
sammy=# UPDATE playground SET color = 'red' WHERE type = 'swing';
Interrogare la tabella per confermare che la modifica è stata apportata:
sammy=# SELECT * FROM playground;
Conclusione
Seguendo questi passaggi, verrà configurato correttamente PostgreSQL sul server Ubuntu 18.04. Se si desidera migliorare la propria esperienza con i pacchetti e le estensioni del server, è possibile trovarne alcuni nel repository Apt PostgreSQL. Con un po ‘ più di guida, sarete in grado di realizzare molto con questo sistema di gestione del database.
Se vuoi fare di più con PostgreSQL puoi dare un’occhiata al nostro tutorial su come utilizzare i ruoli e gestire le autorizzazioni in PostgreSQL.
Calcolo felice!