Friday, 11 July 2025

📌 Backup Moodle SiM dan Restore

 # Backup code Moodle
tar -czvf /var/backup/moodle-code-$(date +%F).tar.gz -C /var/www/html moodle

# Backup moodledata
tar -czvf /var/backup/moodledata-$(date +%F).tar.gz \
--exclude='moodledata/cache' \
--exclude='moodledata/localcache' \
--exclude='moodledata/temp' \
--exclude='moodledata/sessions' \
--exclude='moodledata/trashdir' \
-C /var moodledata

dan

tar -czvf /var/backup/moodledatanotugas-$(date +%F).tar.gz \
--exclude='moodledata/cache' \
--exclude='moodledata/localcache' \
--exclude='moodledata/temp' \
--exclude='moodledata/sessions' \
--exclude='moodledata/trashdir' \
--exclude='moodledata/filedir' \
-C /var moodledata

# Backup database
mysqldump -u root -p moodle2 | gzip > /var/backup/moodle-db-$(date +%F).sql.gz

atau# 

mysqldump -u root -p moodle2 \
--single-transaction \
--quick \
--lock-tables=false \
--ignore-table=moodle2.mdl_logstore_standard_log \
| gzip > /var/backup/moodle-db-$(date +%F).sql.gz


============================
Untuk mengecek detail semua file di dalam /var/backup, termasuk ukuran (size), waktu, dan hak akses, jalankan perintah berikut di terminal:
ls -lh /var/backup

cek hari ini

ls -lh /var/backup/*$(date +%F)*

============================
Kompresi database agar hemat ruang:
gzip /var/backup/moodle-db-2025-07-11.sql

============================
ambil dari latop

scp root@debian:/var/backup/moodle-code-2026-04-21.tar.gz \
    root@debian:/var/backup/moodledata-2026-04-21.tar.gz \
    root@debian:/var/backup/moodledatanotugas-2026-04-21.tar.gz \
    root@debian:/var/backup/moodle-db-2026-04-21.sql.gz \
    root@debian:/var/backup/moodle-db-tanpasampah-2026-04-21.sql.gz \
    ~/Downloads/

 

==========================

RESTORE KE NUC1 

==========================

**kirim dari laptop ke nuc1
scp ~/backup_sim/Backup-21-April-2026/*2026-04-23* root@nuc1:/var/backup/

**stop webserver
systemctl stop nginx

**restore:
code
rm -rf /var/www/html/moodle
tar -xzvf /var/backup/moodle-code-2026-04-21.tar.gz -C /var/www/html

data
rm -rf /var/moodledata
tar -xzvf /var/backup/moodledatanotugas-2026-04-21.tar.gz  -C /var

**reset database
mysql -e "DROP DATABASE moodle; CREATE DATABASE moodle;"

**import database
zcat /var/backup/moodle-db-2026-04-23.sql.gz | mysql moodle 


scp -r username@ip_server:/var/backup/ ~/Downloads/

scp -r root@36.90.101.113:/var/backup/ ~/Downloads/

kkhusus code jurnalmengajar: 

scp root@debian:/var/backup/jurnalmengajar-2026-02-19.tar.gz ~/Downloads/

 

================

CEK 

================
 cek
# cat /etc/nginx/sites-available/moodle
server {
    listen 80;
    listen [::]:80;
    server_name localhost;

    root /var/www/html/moodle;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php(/|$) {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        include fastcgi_params;

        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;

        fastcgi_pass unix:/run/php/php8.2-fpm.sock;
    }
}


=============

=============

ln -s /etc/nginx/sites-available/moodle /etc/nginx/sites-enabled/

 

Share:

0 comments:

Post a Comment