Upgrade CMS Drupal 5 na Drupal 6

Home / Uncategorized / Upgrade CMS Drupal 5 na Drupal 6

Jelikož už je pěkně dlouho venku Drupal ve verzi 6 a konečne vyšel taky modul acidfree na vytváření alb, bez kterého nešel rozumně udělat upgrade, rozhodl jsem se upgradovat na 6kovou verzi (zkoušel jsem to několikrát ve virtuálu než se mi podařilo vychytat všechny chyby při upgradu).

Finální úspěšný postup je následující:

  1. stáhneme si novou verzi drupalu, češtinu a všechny moduly v 6kové verzi (některé moduly jsou nutné v dev verzi – image, některé nahradíme jinými např. tinymce -> fckeditor)
  2. přepneme stránky do offline módu
  3. zazálohujeme databázi drupalu: mysqldump -uroot -p --database drupal > zaloha_drupal.sql
  4. zazálohujeme celý adresář drupalu: např. cp -aR /var/www/site /var/www/site_zaloha, tím máme kompletně zazálohovaný náš site
  5. vypneme všechny moduly co nejsou součástí jádra drupalu
  6. smažeme vše kromě 2 adresářů: files a sites
  7. rozbalíme všechny soubory Drupalu 6 a češtinu do původního adresáře s drupalem, soubor README.txt můžeme přepsat
  8. nasleduící krok při upgradu vypisuje chyby, že nemůže vytvořit tabulky v db, které už tam byli (problém bude ve skriptu update.php), tak jsem je smazal (kupodivu vše po upgradu funguje tak jak má a nic se neztratilo). Takže tyto tabulky v db musíme smazat, aby update db proběhl v pořádku:
  9. cache_form
    menu_router
    actions_old_contrib
    actions
    actions_aid
    search_node_links
    languages
    upload
    menu_links
    menu_custom
    image
    print_page_counter //nemažeme pokud chceme zachovat počítadlo vytisknutí u nodů
    print_node_conf

    SQL prikazy:
    vybereme databázi Drupalu: USE drupal;
    smažeme kolizní tabulky: DROP TABLE actions, actions_old_contrib, actions_aid, cache_form, languages, menu_router, search_node_links, upload, menu_links, menu_custom, image, print_page_counter, print_node_conf;

  10. spustíme update databáze spuštěním skriptu update.php na našem webu: http://site/update.php a aktualizujeme db, pokud jsme se mezitím odhlásili z Drupalu (update.php píše Access denied) je třeba přidat toto do settings.php: $update_free_access = TRUE;
  11. update.php by měl vytvořit/updatovat všechny tabulky v db bez chyby, pokud jsem smazali výše uvedené tabulky
  12. vymažeme $update_free_access = TRUE; ze settings.php pokud jsme ho přidávali
  13. nahrajeme nové moduly do adresáře modules a zapneme moduly, poté zase spustíme update.php, např. modul print nám bude házet chybu pokud jsme nesmazali tabulky print*, že nemůže vytvořit tabulku v db, ale jelikož její struktura je stejná jako v 5kové řadě, tak to můžeme ignorovat
  14. po dokonceni vsech uprav muzeme prepnout web zpet do rezimu online

Dále už jenom stačí doladit nastavení modulu FCKEditor, který jsem použil místo TinyMCE.

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *