Pendahuluan
MOODLE (singkatan dari Modular Object-Oriented Dynamic Learning Environment) adalah paket perangkat lunak yang diproduksi untuk kegiatan belajar berbasis internet dan situs web yang menggunakan prinsip social constructionist pedagogy. MOODLE merupakan salah satu aplikasi dari konsep dan mekanisme belajar mengajar yang memanfaatkan teknologi informasi, yang dikenal dengan konsep pembelajaran elektronik atau e-learning. Moodle dapat digunakan secara bebas sebagai produk sumber terbuka (open source) di bawah lisensi GNU. Moodle dapat diinstal di komputer dan sistem operasi apapun yang bisa menjalankan PHP dan mendukung database SQL.
Untuk dapat menggunakan fitur baru yang ada pada moodle tentunya kita perlu upgrade atau menigkatkan versi moodle yang digunakan. Pada tutorial kali ini saya akan menjelaskan secara detail apa saja yang harus disiapkan untuk upgrade, tak hanya upgrade saja tetapi saya juga akan membagikan beberapa masalah dan solusi yang bisa dilakukan saat upgrade moodle.
Apa saja yang harus disiapkan ?
Langsung saja kita memulai apa saja yang di perlukan untuk upgrade moodle.
1. Untuk bisa menggunakan moodle versi 3.10, disaranakan dari versi 2.9 ke versi 3.1 lalu ke versi 3.5
2. Backup database
3. Backup moodle data
4. Moodle 3.1 minimal PHP 5.4.4 , MySQL 5.5.31 atau MariaDB 5.5.31
5. Moodle 3.5 minimal PHP 7.0.0 , MySQL 5.5.31 atau MariaDB 5.5.31
6. Moodle 3.10 minimal PHP 7.2.0 , MySQL 5.7 atau MariaDB 10.2.29
Langkah Upgrade
1. Buka
setting untuk mengecek moodle versi berapa yang digunakan Administration
> Site Administration > Server > Environment
2. Nampak
di atas versi moodle yang digunakan versi 2.9, kemudian cek juga apakah ada
aplikasi atau paket yang statusnya blm oke, biasanya jika ada yang berlum
terinstall status muncul dengan nama check warna orange, atau kalua yang
bermasah statusnya menjadi error warna merah. Pastikan sebelum update tidak ada
yang error.
3. Untuk
upgrade moodle ke versi yang paling baru yaitu 3.10 harus bertahap, tidak bisa
langsung lompat ke versi 3.10, pada tutorial kalo ini saya menggunakan moodle
2.9 jadi harus melakukan upgrade 2 kali pertama upgrade ke versi 3.1 kemudian
ke versi 3.5 baru setelah versi 3.5 kita bisa langsung skip ke versi 3.10
4. Sebelum
upgrade ada beberapa hal penting yang harus dilakukan yaitu backup jika suatu
saat pada saat proses upgrade mengalami masalah kita masih punya cadangan file
dan bisa di restore. Untuk yang perlu di update yaitu
- Moodle aplikasi, yang berisi aplikasi moodle (misal : /home/konten/moodlelama)
- Moodle data / upload file, yang berisi data upload file dan sebagaianya (missal : /home/konten/moodledatalama)
- Moodle database.
5. Download
moodle versi 3.1 yang paling akhir, link download https://download.moodle.org/stable31/moodle-latest-31.tgz
6. Ekstrak
hasil download moodle, dan pastikan tidak menimpa file aplikasi moodle yang
lama
# tar
-xzvf moodle-latest-31.tgz
7. Hasil
dari ekstrak diatas adalah /home/konten/moodle , maka perlu di rename supaya
membedakan mana yang lama dan yang baru ke moodle-31
# mv
/home/konten/moodle /home/konten/moodle-31/
8. Sebelum
memulai upgrade jangan lupa rubah pengaturan web moodle ke maintenance mode,
supaya menghentikan user non root untuk login.
9. Jangan
lupa rubah owner folder sesuai dengan user yang digunakan
# chown
-R moodle:moodle /home/konten/moodle-31
10. Copy
file config.php ke direktori baru, dalam tutorial ini /home/konten/moodlelama ke
/home/konten/moodle-31
# cp /home/konten/moodlelama/config.php /home/konten/moodle-31/config.php
11. Jika anda pernah install thema atau modifikasi plugin Copykan juga direktori theme dan mod dari moodle lama, ke moodle-31
# cp -pr /home/konten/moodlelama/theme/temakustom /home/konten/moodle-31/theme/
# cp -pr /home/konten/moodlelama/mod/pluginkustom /home/konten/moodle-31/mod/
12. Jika mengalami kendala unsupported_db_table_row_format
![]() |
unsupported_db_table_row_format upgrade moodle |
login ke database, lalu copy saja perintah query di bawah
USE database moodle;
SET SESSION sql_mode=STRICT_ALL_TABLES;
SET GLOBAL innodb_file_per_table=1;
SET GLOBAL innodb_file_format=Barracuda; (Biasanya Error)
ALTER TABLE mdl_data ROW_FORMAT=Compressed;
ALTER TABLE mdl_data_fields ROW_FORMAT=Compressed;
ALTER TABLE mdl_enrol_paypal ROW_FORMAT=Compressed;
ALTER TABLE mdl_lti ROW_FORMAT=Compressed;
ALTER TABLE mdl_user ROW_FORMAT=Compressed;
ALTER TABLE mdl_user_info_field ROW_FORMAT=Compressed;
Atau bisa menggunakan CLI php moodle, berikut perintahnya
# php /home/konten/moodlelama/admin/cli/mysql_compressed_rows.php –fixUntuk opsi perintahnya bisa beikut penjelasaanya
-i, --i Menunjukan informasi database
-l, --list Melihat daftar table yang bermasalah
-f, --fix Mencoba memperbaiki semua table ( yang memerlukan hak akses Super)
-s, --showsql Memberitahu untuk memperbaiki table dengan perintah SQL
-h, --help Menampilkan bantuan
Jika error buka konfig /etc/my.cnf.d/server.cnf (lokasi ini sesuaikan dengan lokasi konfigurasi aplikasi database yang anda gunakan)
![]() |
innodb_file_format mariadb upgrade moodle |
[mysqld]
cari command mysqld seperti di atas, lalau copy paste config di bawah ini.
innodb_file_format = Barracuda
innodb_file_per_table = 1
innodb_large_prefix = "ON"
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
skip-character-set-client-handshake
performance_schema = on
lalu simpan, kemudian refresh
![]() |
mysql_full_unicode_support upgrade moodle |
Jika muncul cek di atas silakan rubah charset dan collation untuk perintah CLI seperti berikut
# php /home/konten/moodlelama/admin/cli/mysql_collation.php --collation=utf8mb4_unicode_ci
13. Ketika sudah tidak ada masalah pada environment maka bisa lanjut ke Langkah upgrade moodle, karena saya membedakan nama folder moodle yang dengan yang baru makan sayaa harus mengubah pada setingan virtual host, pada Langkah ini sesuaikan dengan kondisi anda.
Kebetulan saya menggunakan sistem operasi CentOS 7, dengan aplikasi web server Apache. Berikut cara merubahnya
#vim /etc/httpd/conf.d/virtualhostmoodle.conf
Lalu rubah pada bagian DocumentRoot ganti lokasi direktori ke direktori moodle yang baru
Jika sudah simpah dengan tekan tombol esc (pada keyboard), :wq
14. Jangan lupa setelah mengedit file virtual host restart service apachenya dengan perintah.
# systemctl restart httpd
15. Akses moodle melalui web browser kemudian jika mengalami HTTP ERROR 500, kemungkikan yang bermasalah ada ditema periksa kembali tema yang digunakan.
![]() |
HTTP ERROR 500 upgrade moodle |
Solusinya
- Ubah virtual host ke moodle yang lama, kemudian periksa pakailah tema bawaan moodle. Lalu uninstall selain tema default moodle. Dan hapus pada direktori tema yang di uninstall
- Atau bisa juga sebelum upgrade moodle, cek apakah tema yang digunakan apakah sudah mendukung dengan versi moodle yang akan kita install, jika tidak baiknya upgrade juga tema dan sesuaikan dengan versi moodle yang didukung
16. Akses kembali moodle melalui web browser, login user administrator
![]() |
upgrading database moodle |
17. Setelah itu moodle akan memproses dan upgrade database, Klik Continue
![]() |
server checks upgrade moodle |
18. Pastikan dalam tahap ini tidak ada environment yang error, atau check. Kemudian klik Continue lagi
![]() |
plugins check upgrade moodle |
19. Sampai tahap ini juga pastikan bahwa tidak ada plugins yang error atau belum tercopy ke direktori moodle yang baru. Jika ada error maka moodle tidak bisa melanjutkan proses upgrade. Kemudian scroll ke halaman paling bawah lalu klik Upgrade Moodle database now, maka sistem akan memulai proses upgrade
![]() |
proses upgrade moodle |
20. Jika sudah scroll ke halaman paling bawah lalu klik continue, maka tampilannya akan seperti gambar di bawah ini
![]() |
setting setelah upgrade moodle |
21. Jika dirasa tidak ada perubahan pengaturan maka langsung saja scroll ke halaman paling bawah, lalu klik Save changes
Untuk menginstall moodle versi 3.5 dan juga 3.10 kurang lebih caranya sama yaitu tinggal di ulang saja tutorial di atas jika dirasa ada yang tidak perlu langsung di skip ke langkah selanjutnya.
Mohon maaf jika ada yang tidak sesuai mohon masukan supaya kedepan bisa lebih baik memebuat tutorial, jika perlu / butuh bantuan bisa kontak saya di page contact.
0 Comments