Cara Migrasi WordPress ke Hosting Baru Tanpa Downtime
By Yoga · 13 Aug 2026 · 5 min read
Migrasi WordPress ke hosting baru terdengar menakutkan — salah langkah, situs bisa mati berjam-jam. Padahal dengan strategi yang tepat, proses ini bisa selesai tanpa satu detik pun downtime yang terasa oleh pengunjung. Tutorial ini memandu kamu langkah demi langkah, termasuk penanganan untuk site berukuran besar (>2 GB) yang sering jadi hambatan.
Persiapan Sebelum Migrasi
Sebelum menyentuh file apapun, pastikan kamu sudah menyiapkan hal-hal berikut:
- Akses cPanel di hosting lama dan hosting baru
- Kredensial FTP/SFTP untuk kedua server
- Akses phpMyAdmin atau SSH di kedua hosting
- Domain registrar access — kamu perlu mengubah nameserver atau DNS record di akhir proses
- Waktu migrasi — pilih saat traffic rendah (tengah malam atau dini hari)
Tips: Catat TTL (Time To Live) DNS kamu saat ini. Jika nilainya 86400 (24 jam), turunkan ke 300–600 detik minimal 24–48 jam sebelum migrasi. Ini akan mempercepat propagasi DNS saat cutover nanti.
Pilih Metode Migrasi yang Tepat
Ada tiga metode utama yang bisa kamu gunakan, masing-masing dengan kelebihan dan keterbatasan:
| Metode | Cocok Untuk | Batas Ukuran | Kemudahan |
|---|---|---|---|
| All-in-One WP Migration | Site kecil–menengah | ~512 MB (free) | ⭐⭐⭐⭐⭐ |
| Duplicator Pro | Site menengah–besar | Tidak terbatas | ⭐⭐⭐⭐ |
| Manual via cPanel/SSH | Semua ukuran | Tidak terbatas | ⭐⭐⭐ |
Untuk site >2 GB, metode manual via cPanel atau SSH adalah yang paling andal. Plugin berbasis browser sering timeout saat memproses file besar.
Metode 1: All-in-One WP Migration (Site < 512 MB)
Langkah Export
- Install dan aktifkan plugin All-in-One WP Migration di site lama
- Masuk ke menu All-in-One WP Migration → Export
- Pilih Export To → File
- Tunggu proses selesai, lalu download file
.wpress
Langkah Import
- Install WordPress baru di hosting tujuan (bisa via Softaculous di cPanel)
- Install plugin All-in-One WP Migration di WordPress baru
- Masuk ke All-in-One WP Migration → Import
- Upload file
.wpressyang sudah didownload - Konfirmasi overwrite, tunggu proses restore selesai
- Login dengan kredensial lama (username & password dari site asal)
Metode 2: Duplicator (Site Menengah–Besar)
Duplicator membuat dua file: archive (berisi semua file WordPress) dan installer.php.
- Install Duplicator di hosting lama
- Buat package baru: Duplicator → Packages → Create New
- Jalankan scan, abaikan warning minor, klik Build
- Download kedua file:
archive.zipdaninstaller.php - Upload keduanya ke root folder hosting baru via FTP atau File Manager cPanel
- Buka browser dan akses:
http://domainbaru.com/installer.php - Ikuti wizard: masukkan kredensial database baru, lalu jalankan instalasi
- Hapus
installer.phpdanarchive.zipsetelah selesai (wajib, demi keamanan)
Metode 3: Migrasi Manual via cPanel & SSH (Site >2 GB)
Ini adalah metode paling reliable untuk site besar. Prosesnya sedikit lebih panjang tapi bebas dari limitasi upload.
Step 1: Backup File WordPress via SSH
Login ke hosting lama via SSH, lalu compress seluruh folder WordPress:
# Masuk ke direktori public_html
cd /home/usercpanel/public_html
# Buat arsip tar.gz
tar -czf /home/usercpanel/backup_wordpress.tar.gz .
Step 2: Backup Database
Masih di SSH hosting lama:
mysqldump -u db_user -p db_name > /home/usercpanel/backup_db.sql
Atau gunakan phpMyAdmin → Export → Format: SQL → Go.
Step 3: Transfer File ke Hosting Baru
Ada dua cara efisien:
Opsi A — Transfer langsung antar server (tercepat):
# Jalankan di hosting BARU via SSH
scp user_lama@ip_hosting_lama:/home/usercpanel/backup_wordpress.tar.gz /home/userbaru/public_html/
Opsi B — Download ke lokal, lalu upload via FTP: Gunakan FileZilla dengan mode transfer binary. Untuk file >2 GB, pecah arsip terlebih dahulu:
# Pecah menjadi bagian 500MB
split -b 500m backup_wordpress.tar.gz backup_part_
# Gabung kembali di hosting baru
cat backup_part_* > backup_wordpress.tar.gz
Step 4: Extract dan Import di Hosting Baru
# Di hosting baru, masuk ke public_html
cd /home/userbaru/public_html
# Extract arsip
tar -xzf backup_wordpress.tar.gz
# Import database
mysql -u db_user_baru -p db_name_baru < backup_db.sql
Step 5: Update wp-config.php
Edit file wp-config.php di hosting baru untuk menyesuaikan kredensial database baru:
define( 'DB_NAME', 'db_name_baru' );
define( 'DB_USER', 'db_user_baru' );
define( 'DB_PASSWORD', 'password_baru' );
define( 'DB_HOST', 'localhost' );
Step 6: Update URL di Database (Jika Pindah Domain)
Jika kamu pindah ke domain baru, jalankan query ini di phpMyAdmin hosting baru:
UPDATE wp_options SET option_value = 'https://domainbaru.com' WHERE option_name = 'siteurl';
UPDATE wp_options SET option_value = 'https://domainbaru.com' WHERE option_name = 'home';
Atau gunakan plugin Better Search Replace untuk mengganti URL lama di seluruh konten database secara aman.
Strategi DNS Cutover Tanpa Downtime
Inilah inti dari "tanpa downtime" yang sesungguhnya. Kuncinya adalah memvalidasi site di hosting baru sebelum mengubah DNS.
Preview Site di Hosting Baru Tanpa Ubah DNS
Edit file hosts di komputer kamu untuk mengarahkan domain ke IP hosting baru secara lokal:
Windows: C:\Windows\System32\drivers\etc\hosts
Mac/Linux: /etc/hosts
Tambahkan baris:
103.xx.xx.xx domainmu.com www.domainmu.com
Ganti 103.xx.xx.xx dengan IP hosting baru. Sekarang browser kamu akan membuka site di hosting baru, sementara pengunjung lain masih mengakses hosting lama.
Checklist Validasi Sebelum Cutover
- Homepage tampil dengan benar
- Halaman produk/blog/konten bisa diakses
- Form login admin berfungsi
- Gambar dan media tampil (tidak broken)
- Plugin aktif dan berjalan normal
- SSL/HTTPS aktif di hosting baru
- Kecepatan loading terasa normal
Proses DNS Cutover
Setelah semua validasi lolos:
- Login ke domain registrar (Namecheap, GoDaddy, atau registrar lokal kamu)
- Ubah Nameserver ke nameserver hosting baru, ATAU ubah A Record ke IP hosting baru
- Simpan perubahan
- Propagasi biasanya selesai dalam 5–30 menit jika TTL sudah diturunkan sebelumnya
Selama propagasi berlangsung, jangan hapus data di hosting lama. Beberapa pengunjung masih mungkin mengakses hosting lama selama beberapa jam.
Sinkronisasi Konten Baru Saat Propagasi
Jika site kamu aktif menerima konten baru (komentar, order, post baru), lakukan:
- Set WordPress di hosting lama ke mode maintenance sesaat sebelum DNS cutover
- Ambil dump database final dari hosting lama
- Import ke hosting baru
- Ubah DNS
- Matikan mode maintenance di hosting baru setelah propagasi selesai
Ini meminimalkan window downtime menjadi hanya beberapa menit.
Troubleshooting Umum Setelah Migrasi
- Error 500: Cek file
.htaccess— regenerate via Settings → Permalinks → Save - Gambar tidak muncul: Pastikan permission folder
wp-content/uploadsadalah755 - Login loop: Hapus cookie browser atau cek
COOKIE_DOMAINdiwp-config.php - Database connection error: Verifikasi ulang kredensial di
wp-config.php - Mixed content (HTTP/HTTPS): Install plugin Really Simple SSL atau update URL via Better Search Replace
Penutup
Migrasi WordPress tanpa downtime bukan sihir — ini soal urutan langkah yang benar: backup dulu, validasi di hosting baru, baru ubah DNS. Untuk site besar >2 GB, metode manual via SSH jauh lebih andal dibanding plugin berbasis browser.
Jika kamu sedang mencari hosting baru yang mendukung SSH, cPanel, dan performa tinggi sebagai tujuan migrasi, GoCelerus menyediakan layanan shared hosting dan VPS yang bisa menjadi pilihan untuk kebutuhan WordPress kamu di Indonesia.