VPS: eseguire il backup manuale dei dati di un sito web e importarli dopo la reinstallazione del sistema operativo
Per creare un PDF, utilizzare la funzione “Stampa” in fondo alla pagina.
Questo articolo ti aiuta a eseguire il backup dei dati del tuo sito web e dei tuoi database localmente sul tuo computer prima di installare un nuovo sistema operativo sul tuo VPS IONOS, per poi importarli nuovamente. Poiché la reinstallazione del sistema operativo comporta la cancellazione di tutti i dati presenti sul server, questo processo deve essere eseguito necessariamente.
In questo articolo scoprirai come:
- identificare i dati del sito web e i file di configurazione necessari per Apache e Nginx.
- esportare il database MySQL utilizzato e salvarlo localmente.
- salvare localmente sul tuo computer i file del sito web e il database MySQL esportato.
- installare nuovamente le applicazioni Apache, Nginx, PHP e MySQL dopo aver reinstallato il sistema operativo.
- importare i dati del backup e il database dal computer locale al VPS.
Attenzione
Poiché stai reinstallando il sistema operativo sul tuo VPS esistente, tutti i dati presenti sul server andranno irrimediabilmente persi. Assicurati di aver completato tutte le operazioni di backup, compresa l'esportazione del database e il download dei file, prima di avviare l'installazione del nuovo sistema operativo nel Cloud Panel di IONOS.
Nota bene
Questo processo richiede un'attenta pianificazione ed esecuzione.
Verifica quali impostazioni e configurazioni di sicurezza devono essere effettuate dopo l'installazione del nuovo sistema operativo. Questo vale sia per le applicazioni che per il sistema operativo installati.
Assicurati che la funzionalità dei tuoi siti web, delle applicazioni e degli script sia verificata con attenzione. Prevedi quindi un tempo sufficiente per i test e la risoluzione dei problemi.
Se necessario, informa i tuoi utenti dei tempi di inattività previsti.
Il backup e la migrazione dei dati sono di tua responsabilità e non sono inclusi nel servizio di assistenza di IONOS.
Identificare i file del sito web
Prima di eliminare il sistema, devi identificare i file del sito web necessari.
Apache
- Stabilisci una connessione SSH al tuo VPS e accedi come amministratore. Trovi le istruzioni per farlo nel seguente articolo: Connessione al server Linux tramite SSH
Per cercare in tutti i file della directory /etc/apache2/sites-enabled e nelle sue sottodirectory il testo che contiene il nome del tuo dominio, sostituisci il segnaposto nel comando riportato di seguito. Dopodiché inserisci il comando.
[root@localhost ~]# grep -Ril "NOME_DOMINIO" /etc/apache2/sites-enabled
Esempio:
[root@localhost ~]# grep -Ril "example.com" /etc/apache2/sites-enabled
Viene quindi visualizzato il percorso del file di configurazione del tuo sito web. Esempio:
/etc/apache2/sites-enabled/example.com.conf
Apri il file con l'editor vi. Per farlo, inserisci il seguente comando dopo aver modificato i segnaposto:
[root@localhost ~]# vi /etc/PERCORSO/NOME_FILE.conf
Esempio:
[root@localhost ~]# vi /etc/apache2/sites-enabled/example.com.conf
Prendi nota del percorso dei file del sito web indicato nella riga DocumentRoot. Nell'esempio seguente, si tratta della directory /var/www/html.
[root@localhost ~]# vi /etc/apache2/sites-enabled/example.com.conf
<VirtualHost *:80> ... ServerAdmin webmaster@localhost DocumentRoot /var/www/html ... ErrorLog ${APACHE LOG DIR}/error.log CustomLog ${APACHE LOG DIR}/access.log combinato
- Premi il tasto [ESC].
- Per uscire da vi e salvare il file, immetti il comando :wq e premi Invio.
Nginx
- Stabilisci una connessione SSH al server che hai utilizzato finora e accedi come amministratore. Le istruzioni sono riportate nel seguente articolo: Connessione al server Linux tramite SSH
Apri la directory di configurazione di Nginx.
[root@localhost ~]# cd /etc/nginx
Apri il file di configurazione principale di Nginx con l'editor vi. Di solito si tratta del file nginx.conf. Per farlo, adatta il comando qui sotto e poi inseriscilo:
[root@localhost ~]# vi /etc/nginx/nginx.conf
- Cerca nel file di configurazione principale le righe che contengono “include”. Quindi controlla quali altri file di configurazione o directory sono caricati (ad esempio, sites-enabled/*)
- Prendi nota dei file di configurazione o delle directory necessarie e dei loro percorsi.
Per trovare la direttiva root che specifica il percorso dei file del sito web, inserisci il seguente comando:
[root@localhost ~]# grep -R 'root' /etc/nginx/
Questo comando cerca in tutti i file sotto /etc/nginx la stringa di caratteri root. L'output mostra i file e le righe corrispondenti in cui è impostata la direttiva root. L'output di grep può contenere diverse righe se Nginx ospita, ad esempio, più siti web (Server Blocks). Ogni riga mostra il percorso del file di configurazione e la riga in cui è impostata la direttiva root. Esempio: etc/nginx/sites-available/example.com: root /var/www/example.com/html;
In questo esempio, il percorso /var/www/example.com/html è usato come directory principale per il sito web example.com.
- Annota il percorso della directory principale.
Verifica il contenuto della directory principale. Per visualizzarne il contenuto, digita il seguente comando:
[root@localhost ~]# ls -l /PERCORSO
Esempio:
[root@localhost ~]# ls -l /var/www/example.com/html
Eseguire il backup del database MySQL
Per eseguire il backup del database MySQL del tuo sito web, devi conoscere i dati di accesso del database MySQL. Hai inoltre bisogno delle seguenti informazioni:
- Porta
- Host
- Nome del database
Se conosci i dati di accesso del database MySQL, puoi saltare questa sezione.
Identificare i dati di accesso
La sezione seguente spiega dove trovare i dati di accesso a MySQL:
WordPress
In WordPress, i dati di accesso a MySQL si trovano nel file wp-config.php. Questo si trova nella directory principale dell'installazione di WordPress.
I percorsi tipici sono i seguenti, ad esempio:
/var/www/html/wp-config.php
oppure
/var/www/example.com/wp-config.php /** The name of the database for WordPress */ define('DB_NAME', 'db123456789');
/** Nome utente del database MySQL */ define('DB_USER', 'dbo123456789');
//** MySQL database username */ define('DB_USER', 'dbo123456789');
/** MySQL database password */ define('DB_PASSWORD', 'Password_segreta');
/** MySQL hostname */ define('DB_HOST', 'db123456789.hosting-data.io');
/** WordPress Database Table prefix. */$table_prefix = 'abcd_';
Siti web senza CMS
Per i siti web che accedono direttamente a un database e non utilizzano un CMS, la memorizzazione dei dati di accesso dipende dalla configurazione individuale. I dati di accesso sono spesso salvati in file di configurazione utilizzati dai rispettivi script. In questo caso, per trovare i dati di accesso devi cercare i parametri di connessione al database nei file PHP, Python, Java o di altri file di backend.
Esportare il database MySQL
Per eseguire il backup di un database MySQL, utilizza lo strumento mysqldump, fornito con la maggior parte delle installazioni di MySQL. Immetti il comando qui sotto dopo aver sostituito i segnaposto.
mysqldump --no-tablespaces --port NUMERO_PORTA--host=HOSTNAME --user=NOME UTENTE--password=PASSWORD NOME DATABASE | gzip > /root/dbdump.sql.gz
Attenzione
Se inserisci la password direttamente nel comando dopo --password=, questa verrà salvata in chiaro nella cronologia dei comandi (bash history) del tuo server. Per evitare ciò, puoi specificare il parametro --password senza un valore. In questo caso, ti verrà chiesto di inserire una password sicura dopo aver inviato il comando, durante il quale ciò che digiti rimarrà invisibile.
Esempio:
mysqldump --user=NOME_UTENTE--password DATABASE> /root/dbdump.sql
Dopo aver inserito il comando, il database viene esportato nella directory principale. Il nome del file è dbdump.sql.gz.
Nota bene
Se i nomi dei tuoi file, le password o i nomi degli utenti contengono caratteri speciali, devi racchiuderli tra virgolette singole (') nel comando mysqldump o mysql.
Esempio: mysqldump [...] --password='%gCjmnrmLk!xnSefw'
Salvare localmente i file del sito web e il database MySQL esportato
Salva la copia dei file del sito web e del database MySQL esportato sul tuo computer locale. Questo è il passo fondamentale prima di iniziare la reinstallazione del sistema operativo. A tale scopo puoi utilizzare il programma FileZilla. FileZilla è disponibile per computer con sistemi operativi Windows, macOS e Linux.
Puoi scaricare il file di installazione più recente per il tuo sistema operativo dalla seguente pagina: https://filezilla-project.org/download.php?type=client
Per stabilire una connessione al server con FileZilla e scaricare la copia dei file del sito web e il database MySQL esportato su un computer locale, procedi come segue:
- Avvia FileZilla sul computer locale.
- Inserisci l'indirizzo IP del server nel campo Server.
- Inserisci il nome utente root nel campo User.
- Nel campo Password, inserisci la password impostata.
- Inserisci la porta 22 nel campo Porta.
- Fai clic su Connetti. La connessione al server viene stabilita. Le directory presenti sul client sono visualizzate nell'area a sinistra. Le directory presenti sul server sono visualizzate nell'area a destra.
- Crea una directory sul tuo computer locale.
- Apri la directory principale del tuo server web.
- Seleziona la directory principale sul tuo server e copiala nella directory che desideri sul tuo computer locale utilizzando il drag-and-drop.
- Copia anche i file di configurazione o le directory necessarie nella directory desiderata sul tuo computer locale tramite drag-and-drop.
- Apri la directory principale.
- Seleziona il database esportato. Il nome del file è dbdump.sql.gz. Copia quindi il file nella directory desiderata sul tuo computer locale tramite drag-and-drop.
Reinstallare il sistema operativo
Esegui la reinstallazione del sistema operativo tramite il Cloud Panel IONOS.
Attenzione
Questa operazione cancellerà tutti i dati presenti sul VPS.
Trovi le istruzioni su come installare una nuova immagine nel seguente articolo: Reinstallare un'immagine (VPS)
Installare le applicazioni sul nuovo server
Una volta installato il nuovo sistema operativo, devi ricreare l'ambiente. A tal fine, devi installare le applicazioni necessarie sul tuo nuovo server.
Attenzione
Prima dell'installazione, verifica i requisiti di sistema necessari. Inoltre, controlla sui siti dei produttori del software se ci sono eventuali problemi di compatibilità.
Installare Apache, MySQL/MariaDB e PHP
Le istruzioni su come installare Apache, MySQL/MariaDB e PHP sono riportate nei seguenti articoli:
Installazione dello stack LAMP su un server (AlmaLinux 9 e Rocky Linux 9)
Installare lo stack LAMP su un server con Debian o Ubuntu
Installazione di Nginx
Le istruzioni su come installare Nginx sono riportate nel seguente articolo:
Installazione di Plesk
Le istruzioni su come installare Plesk sono riportate nei seguenti articoli:
Installare Plesk (VPS Linux e Server Cloud migrato)
Installare Plesk (VPS Windows e Server Cloud migrato)
Installare WordPress
Le istruzioni su come installare WordPress su un server sono contenute nella documentazione di WordPress. Questa si trova alla seguente pagina:
Proteggere il sistema operativo e le applicazioni
Dopo aver installato il nuovo sistema operativo, modifica tutte le impostazioni e le configurazioni di sicurezza necessarie del server. Questo vale sia per il nuovo sistema operativo che per le applicazioni installate.
Trovi informazioni su alcune misure di sicurezza fondamentali nel seguente articolo: Informazioni importanti per la sicurezza del tuo server Linux (seconda parte)
Importare i file del sito web
Apache
- Stabilisci una connessione SSH al nuovo server e accedi come amministratore.
- Apri anche FileZilla.
- Con FileZilla, copia i dati di backup e i file di configurazione nelle directory corrispondenti sul tuo nuovo server tramite drag-and-drop.
- Controlla i file di configurazione, i percorsi e le impostazioni specifici del vecchio ambiente server e, se necessario, modificali.
Per riavviare Apache, torna al programma con cui hai stabilito la connessione SSH e inserisci il seguente comando:
AlmaLinux e Rocky Linux
[root@localhost ~]# ssudo systemctl restart httpd
Debian e Ubuntu
[root@localhost ~]# sudo systemctl restart apache2
- Verifica gli script utilizzati e modificali se necessario.
- Testa il sito web e la configurazione.
Nginx
Stabilisci una connessione SSH al nuovo server e accedi come amministratore.
Apri anche FileZilla.
- Con FileZilla, copia i dati di backup e i file di configurazione nelle directory corrispondenti sul tuo nuovo server tramite drag-and-drop.
- Controlla i file di configurazione, i percorsi e le impostazioni che erano configurati per il vecchio ambiente server e, se necessario, modificali.
- Per riavviare Nginx, torna al programma con cui hai stabilito la connessione SSH e inserisci il seguente comando:
[root@localhost ~]# sudo systemctl restart nginx
Controlla gli script utilizzati e, se necessario, modificali.
Testa il sito web e la configurazione.
Importare il database MySQL
- Apri FileZilla.
- Copia il database esportato tramite drag-and-drop nella directory corrispondente sul tuo nuovo server.
- Torna al programma che hai utilizzato per stabilire la connessione SSH.
- Apri la directory in cui si trova il database esportato.
Per ripristinare i tuoi dati, esegui il comando mysql seguendo lo schema riportato di seguito. Sostituisci i segnaposto scritti in maiuscolo con le credenziali di accesso al database in cui desideri ripristinare i dati.
[root@localhost ~]# gunzip -c NOME FILE| mysql --user=NOME UTENTE--password=PASSWORD DATABASE
- Controlla le impostazioni di sicurezza del database MySQL.
Trasferire un blog WordPress
Le istruzioni su come importare un blog WordPress di cui hai eseguito il backup sono riportate nella pagina seguente:
Migrazione di un sito WordPress: i passi da compiere per il trasferimento del server
Completamento e verifica
Impostazioni DNS: dato che l'indirizzo IP del tuo VPS di solito non cambia in caso di reinstallazione, non devi modificare nulla nel DNS.
Test di funzionamento: verifica che il sito web non presenti errori di script e controlla le connessioni al database.
Sicurezza: modifica immediatamente le regole del firewall e le impostazioni di sicurezza del nuovo sistema operativo.
Contenuto
- Identificare i file del sito web
- Eseguire il backup del database MySQL
- Esportare il database MySQL
- Salvare localmente i file del sito web e il database MySQL esportato
- Reinstallare il sistema operativo
- Installare le applicazioni sul nuovo server
- Installare Apache, MySQL/MariaDB e PHP
- Proteggere il sistema operativo e le applicazioni
- Importare i file del sito web
- Trasferire un blog WordPress
- Completamento e verifica
- Torna su