[moodle] Migrazione di Moodle 3.4 su nuovo server e dominio

Questa guida fa riferimento a Moodle 3.4, ma in linea generale dovrebbe essere valida per tutte le versioni di Moodle 3.x.

Per determinare la versione del proprio Moodle è sufficiente consultare il file version.php nella root del portale.

All’occorenza possiamo impostare Moodle in modalità manutenzione, durante il trasferimento.

1. Backup di tutti i dati

Anzitutto dobbiamo effettuare il backup di tutti i dati.

Moodle si trova tipicamente distribuito in due cartelle, la root del virtualhost e una cartella per i dati.

Per esempio le due cartelle potrebbero trovarsi in:

radice virtual host > /var/www/vhosts/petarkaran.it/htdocs

cartella dei dati > /var/www/vhosts/petarkaran.it/dati_moodle

La cartella dei dati dovrebbe trovarsi sempre in un’ubicazione privata, non accessibile direttamente dal virtualhost. Ovviamente deve essere accessibile ad apache.

Questo vuol dire che dobbiamo ricreare entrambe le posizioni sul nuovo server (con l’eventuale nuovo dominio).

ATTENZIONE! Se il backup dei dati viene fatto tramite FTP bisogna impostare il trasferimento dei dati su binario

A questo punto l’ideale sarebbe fare un file zip per il contenuto di ciascuna delle due cartelle. Per farlo su server Linux è sufficiente digitare:

Il comando va eseguito all’interno di ciascuna cartella. Se volessi farlo in sequenza per le suddette due cartelle, dovrei fare:

Se si dovesse procedere con un client FTP invece, assicuriamoci, come evidenziato prima, di impostare il trasferimento su binario.

Su FileZilla bisogna andare su Modifica > Impostazioni > Trasferimenti > Tipi di file e selezionare Tipo di trasferimento predefinito > Binario, come nell’immagine:

Fatto tutto questo eseguiamo il backup del database.

Se abbiamo fatto tutto correttamente avremo 3 file di backup:

  • cartella della radice principale di moodle
  • cartella dei dati di moodle
  • file SQL del database

2. Importare il database

Adesso predisponiamo il database MySQL/MariaDB.

Anzitutto assicuriamoci che il set di caratteri del nuovo database sia utf8mb4

Per importare il database potrebbe essere necessario modificare alcuni parametri del database stesso.

In particolare potrebbe essere necessario modificare il file /etc/mysql/my.cnf aumentando i parametri innodb_log_file_size e max_allowed_packet

Prima di importare il file dobbiamo sostituire dentro tutti i parametri del vecchio dominio. Se per esempio stessimo migrando la piattaforma da petarkaran.it a petarkaran.org allora dovremmo usare il Trova e Sostituisci di un opportuno editor di testo (per esempio Notepad++).

Una volta sostituiti tutti gli indirizzi possiamo importare il file sql nel nuovo database.

3. Trasferire i dati e modificare il file config.php

A questo punto ricostruiamo la struttura delle cartelle della radice e dei dati sul nuovo server. Immaginiamo di creare:

radice virtual host > /var/www/vhosts/petarkaran.org/htdocs

cartella dei dati > /var/www/vhosts/petarkaran.org/dati_moodle

Scompattiamo dentro i dati (o trasferiamoli tramite FTP) ed assicuriamoci che i permessi siano impostati correttamente sull’utente di apache del nuovo server.

Fatto questo modifichiamo le seguenti voci del file config.php nella radice del virtualhost:

Ovviamente bisogna inserire i dati corretti.

4. Avviare Moodle e pulire la cache

Una volta avviato Moodle possiamo effettuare l’accesso. Prima di rendere tutto operativo dobbiamo solamente svuotare la cache per far ripartire tutto da capo con i nuovi parametri.

Per farlo andiamo su Dashboard > Amministrazione del sito > Sviluppo > Svuota le cache

Premiamo il tasto Svuota Cache

Rispondi

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.