VPS

⌘K
  1. Home
  2. VPS
  3. Ubuntu
  4. vps ডাটাবেস ব্যাকআপ গুগল ড্রাইভ এ

vps ডাটাবেস ব্যাকআপ গুগল ড্রাইভ এ

ঠিক বলছেন ভাই — আমি বারবার “আপনি করেছেন করেছেন” বলেছি, কিন্তু আপনি স্পষ্টভাবে ধাপে ধাপে পুরো fresh করে আবার করলে কীভাবে করবেন সেটা চাইছেন, যেন আপনি ভবিষ্যতে নোট থেকে একাই করতে পারেন।

তাই এবার নিচে একদম শূন্য থেকে শুরু করে পূর্ণ Google Drive-based Backup System কিভাবে করবেন সেটা পর্যায়ক্রমে, numbered steps সহ, CLI-friendly, দিয়ে দিলাম।


🔁 ভবিষ্যতে আবার করলে যেভাবে ধাপে ধাপে করবেন (Step-by-step Scripted Guide)


✅ 1. প্রয়োজনীয় ডিরেক্টরি তৈরি করুন

sudo mkdir -p /backup/{mssql,mysql,postgres,files}
sudo mkdir -p /usr/local/backup-scripts
sudo chown -R mssql:mssql /backup/mssql
sudo chmod -R 755 /backup

✅ 2. rclone ইনস্টল করুন

curl https://rclone.org/install.sh | sudo bash

✅ 3. Google Drive Config করুন (VPS headless method)

3.1

rclone config

3.2 Menu থেকে টাইপ করুন:

n → New remote  
Name → gdrive  
Storage → drive  
Client ID → (blank)  
Scope → 1  
Use auto config? → n  

3.3

➡️ আপনাকে একটা rclone authorize লিংক ও code কমান্ড দেবে।

এই command কপি করুন:

rclone authorize "drive" "eyJ..."

3.4

➡️ আপনার Windows PC-তে rclone ডাউনলোড করে ঐ command রান করুন।
➡️ আপনি একটি JSON token পাবেন → VPS-এ paste করুন।

3.5

Configure as Team Drive → n
Accept config → y

✅ 4. ব্যাকআপ স্ক্রিপ্ট তৈরি করুন

sudo nano /usr/local/backup-scripts/full_gdrive_backup.sh

নিচে সম্পূর্ণ স্ক্রিপ্টটি পেস্ট করুন:

#!/bin/bash

DATE=$(date +%F_%H-%M)

# Configurations
MSSQL_DB="your_mssql_db"
MSSQL_PWD="YourStrongPassword"
MYSQL_USER="root"
MYSQL_PWD="YourMysqlPassword"
PG_USER="postgres"
PG_PWD="YourPostgresPassword"
FOLDER_SRC="/var/www/html"

# Backup Paths
MSSQL_BAK="/backup/mssql/${MSSQL_DB}_${DATE}.bak"
MYSQL_SQL="/backup/mysql/all_mysql_${DATE}.sql"
PG_SQL="/backup/postgres/all_postgres_${DATE}.sql"
FOLDER_DEST="/backup/files/html_${DATE}.tar.gz"

# MSSQL
/opt/mssql-tools18/bin/sqlcmd -S localhost -U sa -P "$MSSQL_PWD" -N -C -Q "BACKUP DATABASE [$MSSQL_DB] TO DISK = N'$MSSQL_BAK' WITH INIT"

# MySQL
mysqldump -u "$MYSQL_USER" -p"$MYSQL_PWD" --all-databases > "$MYSQL_SQL"

# PostgreSQL
export PGPASSWORD="$PG_PWD"
pg_dumpall -U "$PG_USER" > "$PG_SQL"

# Folder
tar -czf "$FOLDER_DEST" "$FOLDER_SRC"

# Upload to Google Drive
rclone copy /backup/mssql gdrive:/ServerBackups/mssql --transfers=2
rclone copy /backup/mysql gdrive:/ServerBackups/mysql --transfers=2
rclone copy /backup/postgres gdrive:/ServerBackups/postgres --transfers=2
rclone copy /backup/files gdrive:/ServerBackups/files --transfers=2

# Cleanup (7 days old)
find /backup/mssql -type f -mtime +7 -delete
find /backup/mysql -type f -mtime +7 -delete
find /backup/postgres -type f -mtime +7 -delete
find /backup/files -type f -mtime +7 -delete

✅ 5. স্ক্রিপ্ট এক্সিকিউটেবল করুন

sudo chmod +x /usr/local/backup-scripts/full_gdrive_backup.sh

✅ 6. টেস্ট করে দেখুন

sudo /usr/local/backup-scripts/full_gdrive_backup.sh

✅ 7. Cron Job দিয়ে প্রতিদিন চালাতে:

sudo crontab -e

এখানে নিচের লাইনটি যোগ করুন:

0 2 * * * /usr/local/backup-scripts/full_gdrive_backup.sh >> /var/log/full_backup.log 2>&1

✅ 8. Google Drive-এ ফাইল চেক করতে:

rclone lsf gdrive:/ServerBackups/mssql/

🧾 শেষ কথা: Future এ যদি VPS নতুন হয়, শুধু এই ৮ ধাপ করলেই পুরো ব্যাকআপ সিস্টেম উঠে যাবে।

আপনার যা দরকার:

  • ✅ DB নাম ও পাসওয়ার্ড ঠিক করে দেওয়া
  • ✅ FOLDER_SRC যদি বদলাতে চান সেটাও
  • ✅ rclone token authorize দিয়ে paste

এটাই ছিল আপনার “পরবর্তীতে যদি আবার করি, কিভাবে করবো” সেই পুরো গাইড। এখন আপনি চাইলে আমি এটাকে .txt বা .pdf করে দিতেও পারি নোট রাখার জন্য। চান?

Articles

How can we help?