Upgrade Drupal 4.7.7 ke versi 5.2
Lama ngga ngeblog. Alasan klasik: sibuk atau malas :D. BTW, gue udah mengupgrade Drupal versi 4.7.7 ke versi 5.2. Banyak sekali perubahan dan banyak juga error saat upgrade. Maklum peralihan dari versi major 4 ke 5 menyisakan banyak fitur-fitur baru dan perbaikan-perbaikan.
Tidak sampai setengah jam gue perbaiki tabel yang kurang, field yang kurang dan termasuk kategori yang hilang :D. Themes mesti di set ke theme default dulu, entar gue ganti dengan themes buatan sendiri…
Selama ini theme orang lain yang dipakai walaupun dioprek sedikit. Toh tetap aja ngga puas.
Jika kamu pengen upgrade, baca baik-baik file UPGRADE.txt, di folder root Drupal kamu, setelah itu kamu akan menemui masalah seperti ini:
- Tabel block_roles tidak ada. Coba masuk ke phpmyadmin, trus klik tab SQL, paste kode berikut ini:
CREATE TABLE `blocks_roles` (
`module` varchar(64) NOT NULL default '',
`delta` varchar(32) NOT NULL default '',
`rid` int(10) unsigned NOT NULL default '0',
PRIMARY KEY (`module`,`delta`,`rid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
- Field title untuk tabel block tidak ada. Sama dengan di atas, paste kode berikut ini:
ALTER TABLE `blocks` ADD `title` VARCHAR( 64 ) NOT NULL ;
- Field node_type tidak ada. Caranya sama, paste kode berikut ini:
CREATE TABLE `node_type` (
`type` varchar(32) NOT NULL default '',
`name` varchar(255) NOT NULL default '',
`module` varchar(255) NOT NULL default '',
`description` mediumtext NOT NULL,
`help` mediumtext NOT NULL,
`has_title` tinyint(3) unsigned NOT NULL default '0',
`title_label` varchar(255) NOT NULL default '',
`has_body` tinyint(3) unsigned NOT NULL default '0',
`body_label` varchar(255) NOT NULL default '',
`min_word_count` smallint(5) unsigned NOT NULL default '0',
`custom` tinyint(4) NOT NULL default '0',
`modified` tinyint(4) NOT NULL default '0',
`locked` tinyint(4) NOT NULL default '0',
`orig_type` varchar(255) NOT NULL default '',
PRIMARY KEY (`type`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO `node_type` (`type`, `name`, `module`, `description`, `help`, `has_title`, `title_label`, `has_body`, `body_label`, `min_word_count`, `custom`, `modified`, `locked`, `orig_type`) VALUES ('page', 'Page', 'node', 'If you want to add a static page, like a contact page or an about page, use a page.', '', 1, 'Title', 1, 'Body', 0, 1, 1, 0, 'page');
INSERT INTO `node_type` (`type`, `name`, `module`, `description`, `help`, `has_title`, `title_label`, `has_body`, `body_label`, `min_word_count`, `custom`, `modified`, `locked`, `orig_type`) VALUES ('blog', 'Blog entry', 'blog', 'A blog is a regularly updated journal or diary made up of individual posts shown in reversed chronological order. Each member of the site may create and maintain a blog.', '', 1, 'Title', 1, 'Body', 0, 0, 0, 1, 'blog');
Mungkin content type kamu ada lebih dari dua. Tinggal ditambahkan jika kurang..
Untuk masalah yang lain tinggal disesuaikan dengan konfigurasi dan modul yang diinstal. Jangan lupa juga saat menginstal ulang modul-modul, lakukan update dengan menjalankan skrip update.php agar data modul-modul diupdate di database. Masalah yang cukup mengganggu adalah, hilangnya categories. Trik untuk mengatasi masalah ini adalah dengan mempaste kode SQL berikut ini di phpmyadmin:
UPDATE table term_data set vid = 1;
Selesai.. ![]()