Quay lại danh sách
Tin tức công nghệ

Migration từ Shared Hosting lên VPS: Checklist đầy đủ không downtime

12 tháng 5, 2026

Tại sao cần migrate từ Shared Hosting lên VPS?

Khi website của bạn phát triển, Shared Hosting có thể trở thành rào cản cho hiệu suất và khả năng mở rộng. Virtual Private Server (VPS) cung cấp tài nguyên độc lập, quyền kiểm soát cao hơn và khả năng tùy chỉnh linh hoạt. Tuy nhiên, quá trình migration cần được thực hiện cẩn thận để tránh downtime và mất dữ liệu.

Bài viết này sẽ hướng dẫn bạn một quy trình migration hoàn chỉnh với checklist chi tiết, đảm bảo quá trình chuyển đổi diễn ra suôn sẻ và an toàn.

Giai đoạn 1: Chuẩn bị trước khi Migration

1.1. Đánh giá và lựa chọn VPS phù hợp

Trước khi bắt đầu, bạn cần xác định cấu hình VPS phù hợp với nhu cầu:

  • CPU và RAM: Phân tích lưu lượng truy cập hiện tại và dự đoán tăng trưởng
  • Dung lượng lưu trữ: Tính toán tổng dung lượng database, files và dự phòng 30-50%
  • Băng thông: Đảm bảo đủ cho traffic peak
  • Vị trí server: Chọn datacenter gần với đối tượng người dùng chính
  • Hệ điều hành: Ubuntu 22.04 LTS hoặc CentOS 8 được khuyến nghị

1.2. Backup toàn bộ dữ liệu

Đây là bước quan trọng nhất trong toàn bộ quy trình:

  1. Backup database: Sử dụng phpMyAdmin hoặc mysqldump để export toàn bộ databases
  2. Backup files: Download toàn bộ thư mục public_html qua FTP/SFTP
  3. Backup email: Export tất cả email accounts nếu sử dụng email hosting
  4. Lưu trữ cấu hình: Ghi lại các settings quan trọng (PHP version, extensions, cron jobs)
  5. Kiểm tra backup: Verify tính toàn vẹn của các file backup

1.3. Kiểm tra dependencies và requirements

Lập danh sách đầy đủ các yêu cầu kỹ thuật:

  • Phiên bản PHP và các extensions cần thiết
  • Phiên bản MySQL/MariaDB
  • SSL certificates và cấu hình HTTPS
  • Các services bổ sung: Redis, Memcached, Elasticsearch
  • Cron jobs và scheduled tasks
  • Third-party integrations và API keys

Giai đoạn 2: Thiết lập VPS mới

2.1. Cấu hình server cơ bản

Sau khi có quyền truy cập VPS, thực hiện các bước sau:

  1. Update hệ thống: apt update && apt upgrade -y (Ubuntu) hoặc yum update -y (CentOS)
  2. Cấu hình firewall: Mở các ports cần thiết (80, 443, 22)
  3. Tạo user mới: Không sử dụng root cho các tác vụ thường ngày
  4. Cài đặt fail2ban: Bảo vệ khỏi brute-force attacks
  5. Cấu hình SSH: Disable root login, sử dụng SSH keys

2.2. Cài đặt Web Server Stack

Lựa chọn và cài đặt stack phù hợp với website:

Option 1: LAMP Stack (Linux, Apache, MySQL, PHP)

  • Cài đặt Apache2 và cấu hình virtual hosts
  • Cài đặt MySQL/MariaDB và secure installation
  • Cài đặt PHP với các extensions cần thiết

Option 2: LEMP Stack (Linux, Nginx, MySQL, PHP)

  • Cài đặt Nginx với cấu hình tối ưu
  • Cài đặt PHP-FPM cho hiệu suất cao hơn
  • Cấu hình Nginx server blocks

2.3. Cài đặt Control Panel (Optional)

Nếu muốn giao diện quản lý đơn giản hơn, cân nhắc:

  • cPanel/WHM: Phổ biến nhưng có phí license
  • Webmin: Miễn phí, giao diện web-based
  • VestaCP/HestiaCP: Miễn phí, nhẹ và dễ sử dụng
  • CyberPanel: Miễn phí, tích hợp OpenLiteSpeed

Giai đoạn 3: Migration dữ liệu

3.1. Transfer files

Có nhiều phương pháp để transfer files:

Phương pháp 1: Direct transfer từ Shared Hosting

  1. SSH vào VPS mới
  2. Sử dụng wget hoặc rsync để pull files trực tiếp từ shared hosting
  3. Giải nén và đặt vào thư mục web root

Phương pháp 2: Upload qua FTP/SFTP

  1. Sử dụng FileZilla hoặc WinSCP
  2. Upload files từ backup local lên VPS
  3. Phù hợp cho website nhỏ và trung bình

3.2. Import database

Thực hiện import database một cách an toàn:

  1. Tạo database mới và user trên VPS
  2. Import SQL file: mysql -u username -p database_name < backup.sql
  3. Verify data integrity sau khi import
  4. Update database credentials trong config files

3.3. Cấu hình website

Điều chỉnh các settings cho môi trường mới:

  • Update file cấu hình (wp-config.php, .env, config.php)
  • Cấu hình virtual host/server block
  • Set đúng permissions cho files và folders (755 cho folders, 644 cho files)
  • Cài đặt SSL certificate (Let's Encrypt miễn phí)
  • Test website trên VPS bằng cách sửa file hosts local

Giai đoạn 4: Testing và DNS Migration

4.1. Testing kỹ lưỡng

Trước khi chuyển DNS, kiểm tra kỹ càng:

  • Functionality testing: Test tất cả features, forms, checkout process
  • Performance testing: Kiểm tra page load speed, database queries
  • Mobile responsiveness: Test trên các thiết bị khác nhau
  • SSL/HTTPS: Verify certificate hoạt động đúng
  • Email testing: Gửi và nhận email test
  • Cron jobs: Verify scheduled tasks chạy đúng

4.2. Giảm TTL của DNS records

24-48 giờ trước khi migration:

  1. Đăng nhập vào DNS management panel
  2. Giảm TTL (Time To Live) xuống 300 seconds (5 phút)
  3. Điều này giúp DNS propagation nhanh hơn khi bạn thay đổi records

4.3. Chuyển đổi DNS

Đây là bước chuyển đổi chính thức:

  1. Update A record trỏ về IP của VPS mới
  2. Update CNAME records nếu cần
  3. Giữ nguyên MX records nếu email hosting riêng
  4. Monitor DNS propagation qua các tools như whatsmydns.net

Giai đoạn 5: Post-Migration

5.1. Monitoring và optimization

Sau khi migration hoàn tất:

  • Monitor uptime: Sử dụng tools như UptimeRobot, Pingdom
  • Check error logs: Theo dõi Apache/Nginx error logs
  • Performance monitoring: Cài đặt New Relic hoặc similar tools
  • Security scan: Chạy security audit với tools như Sucuri

5.2. Tối ưu hóa VPS

Cải thiện hiệu suất sau migration:

  • Cài đặt caching (Redis, Memcached, Varnish)
  • Enable OPcache cho PHP
  • Cấu hình CDN (Cloudflare, StackPath)
  • Optimize database queries và indexes
  • Enable Gzip compression
  • Implement browser caching

5.3. Backup và disaster recovery

Thiết lập quy trình backup tự động:

  1. Cấu hình automated daily backups
  2. Store backups ở location khác (S3, Google Cloud Storage)
  3. Test restore process định kỳ
  4. Document disaster recovery procedures

Checklist tổng hợp Migration không Downtime

Pre-Migration (1-2 tuần trước):

  • ☐ Đánh giá requirements và chọn VPS
  • ☐ Backup toàn bộ dữ liệu
  • ☐ Document current configuration
  • ☐ Chuẩn bị VPS mới và cài đặt stack

Migration Week:

  • ☐ Giảm DNS TTL xuống 300s
  • ☐ Transfer files và database
  • ☐ Cấu hình website trên VPS
  • ☐ Testing kỹ lưỡng
  • ☐ Setup SSL certificates

Migration Day:

  • ☐ Final backup trên shared hosting
  • ☐ Sync latest changes
  • ☐ Update DNS records
  • ☐ Monitor DNS propagation
  • ☐ Test từ multiple locations

Post-Migration (1-2 tuần sau):

  • ☐ Monitor uptime và performance
  • ☐ Check error logs daily
  • ☐ Optimize và fine-tune
  • ☐ Setup automated backups
  • ☐ Restore DNS TTL về normal
  • ☐ Cancel shared hosting (sau 30 ngày)

Kết luận

Migration từ Shared Hosting lên VPS là một bước quan trọng trong hành trình phát triển website. Với checklist chi tiết và quy trình được lập kế hoạch kỹ lưỡng, bạn hoàn toàn có thể thực hiện migration không downtime và đảm bảo an toàn dữ liệu.

Điều quan trọng nhất là không vội vàng - dành thời gian để chuẩn bị kỹ càng, test kỹ lưỡng và có backup plan cho mọi tình huống. Nếu gặp khó khăn, đừng ngại tham khảo ý kiến từ chuyên gia hoặc cộng đồng technical.

Chúc bạn migration thành công và tận hưởng sức mạnh của VPS!