Tạo folder backup của riêng bạn. Structure folder của tôi như sau:
/var/www/dth/backup/mysql/backup.sh
Nội dung file backup.sh
#!/bin/bash # Biến thời gian DATE=$(date +"%Y%m%d") # Thư mục gốc backup BASE_DIR="/var/www/dth/backup/mysql" # Thư mục backup theo ngày BACKUP_DIR="$BASE_DIR/$DATE" mkdir -p $BACKUP_DIR # Thông tin kết nối DB_USER="" DB_PASS="" # Danh sách các database cần backup DATABASES=("database1" "database2" "database3") # ← Thay bằng tên thật # Vòng lặp qua từng database for DB_NAME in "${DATABASES[@]}" do echo "Backing up $DB_NAME..." mysqldump -u $DB_USER -p$DB_PASS $DB_NAME > $BACKUP_DIR/${DB_NAME}_bk_$DATE.sql done # Thư mục đích trên Google Drive (đã tạo trước) GDRIVE_FOLDER="FolderInGoogleDrive" # Upload toàn bộ thư mục backup lên Google Drive rclone copy $BACKUP_DIR gdrive:$GDRIVE_FOLDER/$DATE # In ra kết quả echo "✅ Backup và upload lên Google Drive thành công lúc $(date)"
Thay các thông tin của bạn vào:
Ở Server:
Cài đặt rclone:
curl https://rclone.org/install.sh | sudo bash
Cấu hình rclone:
rclone config
Sau đó làm theo hướng dẫn:
n
để tạo cấu hình mớigdrive
google drive
Nó sẽ dạng như thế này:
Type of storage to configure. Choose a number from below, or type in your own value. ... 22 / Google Drive
=> Bạn nhập số tương ứng là được
❗ Lưu ý: Nếu server của bạn không có giao diện (headless VPS), bạn có thể chọn "n" và dùng link xác thực thủ công.
Ở máy tính của bạn:
Vào trang:
👉 https://rclone.org/downloads/
Tải bản .zip
dành cho Windows 64-bit
Giải nén thư mục (ví dụ: rclone-v1.65.2-windows-amd64
)
Mở Command Prompt (CMD) hoặc PowerShell, chuyển tới thư mục đó:
.\rclone.exe authorize "drive"
Sau đó xác thực trên trình duyệt.
Khi thành công sẽ có dạng như này
PS C:\HaoDT\dl\rclone-v1.70.3-windows-amd64\rclone-v1.70.3-windows-amd64> .\rclone.exe authorize "drive" 2025/07/31 11:07:26 NOTICE: Config file "C:\\Users\\beleh\\AppData\\Roaming\\rclone\\rclone.conf" not found - using defaults 2025/07/31 11:07:26 NOTICE: Make sure your Redirect URL is set to "http://127.0.0.1:53682/" in your custom config. 2025/07/31 11:07:26 NOTICE: If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth?state=QA1wfImhUeOtyWyAXiYCPw 2025/07/31 11:07:26 NOTICE: Log in and authorize rclone for access 2025/07/31 11:07:26 NOTICE: Waiting for code... 2025/07/31 11:07:45 NOTICE: Got code Paste the following into your remote machine ---> {"access_token":"bjbidfodsfiosdufisdjfsdnbxcjb","token_type":"Bearer","refresh_token":"1//0gPoc0YCl6Xt7CgYIARAAGBASNwF-L9IrXYz5umzbD1ly6EE695b_o_xd5lmenuTM5__TJfeXfFnzp8S9s0pbek1fUHKTrb-tngo","expiry":"2025-07-31T12:07:44.6236463+07:00","expires_in":3599} <---End paste PS C:\HaoDT\dl\rclone-v1.70.3-windows-amd64\rclone-v1.70.3-windows-amd64>
Copy đoạn json ở trên lại.
Quay lại server lúc nãy, dán đoạn json vào config_token>
Hiện như bên dưới là ok nha
Current remotes: Name Type ==== ==== gdrive drive e) Edit existing remote n) New remote d) Delete remote r) Rename remote c) Copy remote s) Set configuration password q) Quit config e/n/d/r/c/s/q>
vào thư mục của bạn và chạy file backup.sh
cd /var/www/dth/backup/mysql/ ./backup.sh
crontab -e 0 2 * * 0 /var/www/dth/backup/mysql/backup.sh
Giải thích: Lệnh này sẽ chạy vào lúc 2:00 sáng mỗi Chủ Nhật, tức mỗi 7 ngày một lần.
=> Vậy là xong rồi, đơn giản phải không các bạn