Backup e Restore di un Database PostgreSQL

Per fare il backup ed il restore di un database postgresql la maniera più semplice è la linea di comando, per il backup basta un semplice:

pg_dump -Fc <nome db> >nomefile.ext

o se preferite la via prolissa ma più mnemonica con:

pg_dump --format=c --file=nomefile.ext <nome db>

dove, evidentemente, <nome db> segna il posto dove digitre il nome del database che volete salvare e nomefile.txt il nome del file dove i vostri dati saranno depositati, lìopzione format ci permette di delegare al ostro beniamino la gestione, non banale, dell’ordine di creazione degli oggetti e dell’ordine del caricamento dei dati .

Per il ripristino la cosa è altrettanto semplice:

pg_restore -C -d postgres nomefile.ext

se amate la prolissità:

pg_restore --create  --dbname=postgres nomefile.ext

anche qui nomefile.ext indica il file dove è stato precedentemente memorizzato il backup e ‘postgres’ indica il database a cui collegarsi inizialmente.

Ovviamente vengono dati per scontate alcune informazioni:

il nome della macchina dove il database è installato è quella da dove viene impartito il comando così come l’utente usato per il collegamento con il database è quello con cui avete fatto il login, la password non è necessaria perchè nel database è presente un utente con lo stesso nome e nel file pg_hba.conf è configurato, per impostazione predefinita, che gli utenti della macchina ospiteante il database (localhost per intenderci) sono esentati, quando presenti anche in postgresql, dalla digitazione della password.

Ovviamente se così non fosse diventa necessario aggiungere:

-h host (oppure –host=host nella versione prolissa) per indicare il nome dell’host dove risiede il nostro beniamino ed ovviamente il parametro -p port (–port=port nella versione prolissa) quando non viene usato il valore standard: ‘5432’.
-U username (–username=username nella versione prolissa) ad indicare l’utente da usare per il collegamento, seguito eventualmente dal parametro -W (–password) ad indicare che venga richiesta comunque la password piuttosto che non venga chiesta affatto, parametro: -w (–no-password) ma presa dal file .pgpass nella home dell’utente del sistema operativo, quest’ultima opzione è meravigliosa quando il comando è inserito in uno script dove però è inopportuno indicare in chiaro la password da usare.

Ovviamente le opzioni in entrambi i comand sono notevoli e utili per affrontare le casistiche di un utilizzo professionale. Ora che avete le basi potete divertirvi esplorando l’ottimo manuale che accompagna postresql ch potte trovare qui.

Come sempre vi aspetto per un’altra lettura.

Ciao
Andrea

 

Installazione ubuntu server

N.B.
Questa guida è stata provata con le versioni 16.04.3 LTS e 18.04 LTS di Uubuntu server 64 bit, molto probabilmente i concetti contenuti possono essere di aiuto anche con le altre versioni di ubuntu ma ovviamente non si potrà prendere alla lettera le istruzioni qui contenute ma valutare di volta in volta eventuali cambiamenti.
L’installazione viene fatta su una macchina virtuale usando come hypervisor VirtualBox 5.2.10 anche qui vale quanto detto precedentemente: potete installare direttamente su una macchina fisica oppure con altri hypervisor o con altre versioni di VirtualBox gestendo in proprio le eventuali differenze rilevate.
Leggi tutto “Installazione ubuntu server”

configurare l’indirizzo IP su Ubuntu

Ben ritrovati!
In questo articolo affronteremo il problema di configurare l’indirizzo ip su Ubuntu.
Questa procedurea è stata provata su Ubuntu Server versione 16.04.3 LTS. e 18.04 LTS entrambi a 64 bit.
Come già detto in altre occasioni nulla vieta che quanto detto valga anche per altre versioni, passate e future, però pesate ogni passaggio perchè ci possono essere differenze anche sostanziali.
Let’s dive in!

Leggi tutto “configurare l’indirizzo IP su Ubuntu”

Il problema degli allegati winmail.dat

Microsoft Outlook, alle volte, invia i messaggi di posta elettronica tramite  il formato “Transport Neutral Encapsulation Format” abbreviato in: “TNEF”.
Molti programmi non riconoscono questo formato (uno per tutti: ThunderBird) e quindi espongono all’utente i dati ricevuti mettendoli in un file chiamato winmail.dat (dati della posta di windows).
Può anche succedere di vedere degli allegati con nomi quali: ATT0008.dat oppure ATT00005.eml ed altri ancora…
Per verificare se un vostro messaggio di posta elettronica ha il problema appena esposto è sufficiente visualizzare il messaggio in formato testo (dovreste riuscire a trovare nascosto da qualche parte un comando del tipo: “View\Message source”) una volta riusciti nel vostro intento cercate una riga che abbia le seguenti parole ( questa riga è detta anche “MIME header”):

Content-Type: application/ms-tnef;

Se la trovate allora vuol dire che nel vostro messaggio c’è allegato un file di questo tipo e che il vostro programma di gestione della posta elettronica, non riuscendo a gestirlo, lo inserisce in un generico file chiamandolo winmail.dat (od uno degli altri nomi che abbiamo illustrato qualche riga addietro).
Ovviamente i vostri dati non sono andati persi, per recuperarli ci sono un sacco di estensioni e/o programmi di utilità che potete recuperare dopo una breve ricerca su internet.
Se volete risolvere velocemente il problema perché il vostro cliente ha urgenza di ricevere un dato file allora provate a inserirlo in un file zip e rispedirlo: molte volte basta a risolvere il problema.
Per evitare che Outlook generi questi tipi di allegati è necessario disabilitare la possibilità di usare l’ RTF (Rich Text Format) per la composizione dei messaggi di  posta elettronica: normalmente questo si ottiene  dal menu “Tools\Options\Mail format\Internet Format”,  ovviamente le versioni di Outlook sono numerose per cui non seguite le indicazioni alla lettera ma usatele come traccia per arrivare al vostro obiettivo.

Ci vediamo

Andrea Adami

NGINX utility per la gestione dei siti

Nonostante NGINX somigli molto a Apache come struttura di directory di configurazione si sente la mancanza di quei piccoli comandi a cui ci ha abituato per abilitare e disabilitare un sito per elencare i siti disponibili ecc..
Girando per il web ho trovato questa utility da github a questo indirizzo:

https://github.com/pyghassen/nginx_modsite

potete scaricarla e metterla, ad esempio su:

Metti su /usr/local/sbin/nginx_modsite

Non è specificato nulla riguardo alla licenza ma visto la maniera in cui è pubblicata si può desumere che l’autore la voglia condividere.

Lanciando il comando senza parametri viene visualizzato un testo di aiuto a cui non è necessario aggiungere nulla:

Usage: nginx_modsite [options]
Options:
 <-e|--enable> <site> Enable site
 <-d|--disable> <site> Disable site
 <-l|--list> List sites
 <-h|--help> Display help

If <site> is left out a selection of options will be presented.
 It is assumed you are using the default sites-enabled and
 sites-disabled located at /etc/nginx.

Buon divertimento

Andrea

Ubuntu 16.04 LTS: Installare l’ultima versione di Nginx

Non sempre nei repository ufficiali abbiamo l’ultima versione di Nginx, i motivi sono da ricercare nella politica delle varie distro riguardo la gestione dei pacchetti e questo non è il momento di discuterne diciamo che è così e vediamo come rimediare:
Quello che dobbiamo fare è aggiungere i repository del PPA di ubuntu che si occupa di rimediare alla faccenda, pèossiamo aggiungere i repository direttamente nel file:

sudo add-apt-repository ppa:nginx/stable
sudo apt-get update

Ricordiamo di aggiornare la cache dei nostri repository con:

sudo apt-get update

A questo punto l’installazione è come al solito:

apt-get install nginx

Alla prossima

Andrea