Public Beta — use code LAUNCH15 for 15% off any plan
Back to blog

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

  1. Install dan aktifkan plugin All-in-One WP Migration di site lama
  2. Masuk ke menu All-in-One WP Migration → Export
  3. Pilih Export To → File
  4. Tunggu proses selesai, lalu download file .wpress

Langkah Import

  1. Install WordPress baru di hosting tujuan (bisa via Softaculous di cPanel)
  2. Install plugin All-in-One WP Migration di WordPress baru
  3. Masuk ke All-in-One WP Migration → Import
  4. Upload file .wpress yang sudah didownload
  5. Konfirmasi overwrite, tunggu proses restore selesai
  6. 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.

  1. Install Duplicator di hosting lama
  2. Buat package baru: Duplicator → Packages → Create New
  3. Jalankan scan, abaikan warning minor, klik Build
  4. Download kedua file: archive.zip dan installer.php
  5. Upload keduanya ke root folder hosting baru via FTP atau File Manager cPanel
  6. Buka browser dan akses: http://domainbaru.com/installer.php
  7. Ikuti wizard: masukkan kredensial database baru, lalu jalankan instalasi
  8. Hapus installer.php dan archive.zip setelah 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:

  1. Login ke domain registrar (Namecheap, GoDaddy, atau registrar lokal kamu)
  2. Ubah Nameserver ke nameserver hosting baru, ATAU ubah A Record ke IP hosting baru
  3. Simpan perubahan
  4. 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:

  1. Set WordPress di hosting lama ke mode maintenance sesaat sebelum DNS cutover
  2. Ambil dump database final dari hosting lama
  3. Import ke hosting baru
  4. Ubah DNS
  5. 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/uploads adalah 755
  • Login loop: Hapus cookie browser atau cek COOKIE_DOMAIN di wp-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.

Welcome to GoCelerus

Save 15% on any plan

Launch promo — 15% off any plan

Your coupon code

LAUNCH15
Browse plans