problema nel passaggio da 5 a 6

8 contenuti / 0 new
Ultimo contenuto
problema nel passaggio da 5 a 6

Poiché negli ultimi tempi giungevano segnali di "smantellamento" di Drupal 5 (alcuni moduli, ad esempio, risultano incompatibili), ho pensato di fare il salto dalla 5 alla 6, cercando però di non interrompere il servizio.
Ho quindi fatto le seguenti operazioni:

  1. ho backuppato sito e db sul mio computer
  2. ho creato una copia del database funzionante con drupal5.21 (_1 di Mysql Aruba) nel database _4
  3. ho modificato il settings.php di drupal5 in modo che si collegasse al db _4; e drupal5 funziona regolarmente
  4. ho creato sul server una cartella che ho chianmato /dr6 (quella di drupal5 funzionante si chiama /dr), con l'intenzione, in futuro, di scambiare in nomi
  5. ho caricato i file drupal 6.15 nella cartella dr6
  6. ho avviato l'installazione, scrivendo nome db (e ci ho messo il db _1, cioè quello che prima usava drupal5), password, ecc.

Ma a questo punto si pianta tutto e mi compaiono due serie di segnali di errore, uno in alto nella fascia azzurra e uno al centro su sfondo rosa:

  • nella fascia in alto azzurra:

Warning: Unknown column 'serialized' in 'field list' query: SELECT data, created, headers, expire, serialized FROM cache WHERE cid = 'variables' in /web/htdocs/www.istitutosantelia.it/home/dr6/includes/database.mysqli.inc on line 128
Warning: Unknown column 'serialized' in 'field list' query: UPDATE cache SET data = 'a:244:{s:13:"filter_html_1";s:1:"1";s:18:"node_options_forum";a:1:{i:0;s:6:"status";}s:17:"menu_primary_menu";i:2;s:19:"menu_secondary_menu";i:2;s:15:"install_profile";s:7:"default";s:17:"node_options_page";a:1:{i:0;s:6:"status";}s:18:"drupal_private_key";s:64:"e45347fe548a1cdd24de314e01eafc637934273e4d6076bd185eb61bb8150529";s:19:"file_directory_temp";s:5:"/tmp/";s:9:"cron_last";i:1266229802;s:21:"date_default_timezone";i:3600;s:22:"configurable_timezones";s:1:"0";s:17:"date_format_short";s:11:"d/m/Y - H:i";s:18:"date_format_medium";s:14:"D, d/m/Y - H:i";s:16:"date_format_long";s:15:"l, j F, Y - H:i";s:14:"date_first_day in /web/htdocs/www.istitutosantelia.it/home/dr6/includes/database.mysqli.inc on line 128
Warning: Unknown column 'language' in 'where clause' query: SELECT src FROM url_alias WHERE dst = 'node' AND language IN('en', '') ORDER BY language DESC in /web/htdocs/www.istitutosantelia.it/home/dr6/includes/database.mysqli.inc on line 128

  • nel riquadro rosa:

user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY fit DESC LIMIT 0, 1' at line 1 query: SELECT * FROM menu_router WHERE path IN () ORDER BY fit DESC LIMIT 0, 1 in /web/htdocs/www.istitutosantelia.it/home/dr6/includes/menu.inc on line 315.
user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY fit DESC LIMIT 0, 1' at line 1 query: SELECT * FROM menu_router WHERE path IN () ORDER BY fit DESC LIMIT 0, 1 in /web/htdocs/www.istitutosantelia.it/home/dr6/includes/menu.inc on line 315.

Tutto ciò vuol dire che non è possibile riutilizzare per la 6 il database della 5?
O ci sono alternative?

Quote:
ho avviato l'installazione

in che senso? Per aggiornare a una versione seguente di Drupal, non devi installare, ma eseguire /update.php
Update.php si occuperà di aggiornare le tabelle. Attento all'uso di moduli aggiuntivi! Nel nuovo sito con D6 dovrai avere caricato tutti i moduli che usavi con D5 in versione compatibile con D6. Ancora meglio se prima del trasferimento:
- aggiorni tutti i moduli aggiuntivi per D5 all'ultima versione disponibile
- disattivi quanti più moduli puoi, in modo che l'update venga prima eseguito sulle tabelle del core e poi, attivando i moduli (magari non tutti in una volta), sulle tabelle dei moduli aggiuntivi.

Allora, vediamo se ho capito bene:

  1. apro la versione D5 (attualmente funzionante ma in offline, collegata con il db _4), aggiorno tutti i moduli (già fatto) e li disattivo tutti
  2. duplico la cartella /dr (che contiene D5) e rinomino il duplicato come /dr6
  3. collego questa “nuova” versione con il db _1
  4. cancello tutte le cartelle dei moduli da dr6/sites/all/modules e le sostituisco con quelle corrispondenti per D6
  5. apro la “nuova” versione in /dr6
  6. lancio /dr6/up

date.php
… e poi fa tutto da solo? Ma dove va a prendersi i file di D6?

no, il punto 2 è sbagliato. Quello che devi fare è copiare i settings (ancora meglio, usa come template il default.settings.php di D6 e copia i dati di collegamento al db di D5) e la cartella files del sito D5: le metti all'interno dell'installazione di D6 che conterrà anche i moduli per D6 poi lanci l'update.

Aggiungo che nel tuo scenario non abbiamo ancora preso in considerazione il tema, che va anch'esso aggiornato per D6.

Ho seguito le istruzioni e, pur tribolando un po', mi sembra che tutto sia a posto.
O meglio, tutto tranne, appunto, il tema.
Nella D5 usavo un tema non compatibile con la 6 (zen-fixed) e bluemarine per l'amministrazione, perciò ho pensato: ignoro il tema e per il momento uso quello predefinito.
Invece succede che nella nuova D6 l'amministrazione continua ad usare bluemarine, mentre le pagine dei contenuti appaiono senza alcun tema (con le scritte una sotto l'altra in Times New Roman).
Ho provato a cambiare il tema predefinito, scegliendo Garland, ma non ho ottenuto alcun effetto.
Dove avrò sbagliato?

Forse ottimizzazioni di CSS e JS in admin/settings/performance, altrimenti (o anche) prova pulire il cache.

Più imparo, più dubito.

Quote:
Forse ottimizzazioni di CSS e JS in admin/settings/performance, altrimenti (o anche) prova pulire il cache

Ho provato, ma niente da fare.

Se può essere utile per capire che cosa è successo, segnalo il fato che ho provato a installare due temi nuovi per vedere se se succedeva qualcosa: e in effetti qualcosa succede, cioè cambiando tema cambia il css "grezzo" (ad esempio il carattere passa a Times a Tahoma) ma sempre grezzo rimane.