Skip to main content

Migrazione dalla versione precedente

Per aggiornare dalla versione v2.x alla versione v3.x serve aggiornare il database, a causa delle modifiche recentemente introdotte, tra cui:

  • Riscrittura dello schema del database
  • Spostamento delle impostazioni da un file al database
danger

Aggiornare il database è un'operazione rischiosa! Assicurati di avere un backup a portata di mano in caso qualcosa vada storto.

Per aggiornare il database, ci sono vari modi:

  • Pagina web (più semplice e consigliato)
  • Linea di comando
  • Manualmente (altamente sconsigliato!!)

Passaggi richiesti per iniziare l'aggiornamento​

tip

Se hai installato con Docker, puoi saltare questi passaggi.

Supponendo che la cartella di installazione sia /var/www/html:

Assicurarsi che la cartella /var/www/utils esista (la cartella superiore rispetto a quella dove sono salvati i file della piattaforma) e contenga i file richiesti (richiesta solo per la migrazione). Per correggere:

mkdir /var/www/utils
cp -r orario/utils/* /var/www/utils/

Assicurarsi che il file /var/www/schema.sql esista (richiesto solo durante la migrazione). Per correggere:

cp orario/schema.sql /var/www/schema.sql

Una volta eseguita la migrazione questi file possono essere eliminati

Aggiornare dalla piattaforma​

  1. Una volta aggiornata la piattaforma Orario, spunterà fuori un messaggio rosso che invita ad aggiornare il database.
  2. Accedere all'amministrazione
  3. Automaticamente spunterà la pagina di aggiornamento del database.
  4. Leggere attentamente le modifiche che verranno effettuate e cliccare su Avvia aggiornamento
  5. Attendere il messaggio verde che indica il completamento dell'aggiornamento
warning

In caso di errore (messaggio rosso), non riprovare immediatamente l'aggiornamento, il database potrebbe corrompersi definitivamente. Ripristinare un backup del database e riprovare. Se il problema persiste, aprite una issue su GitHub

Aggiornare da linea di comando​

  1. Entrate nella cartella /var/www/utils (o equivalente Windows)
  2. Eseguite l'utilità di aggiornamento
php migrate.php
  1. Confermate e attendete la fine degli aggiornamenti
warning

In caso di errore, non riprovare immediatamente l'aggiornamento, il database potrebbe corrompersi definitivamente. Ripristinare un backup del database e riprovare. Se il problema persiste, aprite una issue su GitHub

Aggiornare manualmente​

danger

La procedura di aggiornamento manuale viene rilasciata senza alcuna garanzia. Se qualcosa va storto, non siamo responsabili.

  1. Entra nella linea di comando del tuo server database
  2. Rinomina le tabelle vecchie:
USE school_timetable;
RENAME TABLE classes TO classes_legacy, subjects TO subjects_legacy, timetable TO timetable_legacy;
  1. Importa schema.sql.
  2. Esegui migrate_sql_v1.sql per popolare il nuovo modello.
  3. Elimina le tabelle legacy (opzionale)