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

Cara Migrasi WordPress ke Hosting Baru Tanpa Downtime

By Yoga · 20 Aug 2026 · 5 min read

Migrasi WordPress ke hosting baru sering kali dianggap menakutkan. Bayangan site mati beberapa jam, data hilang, atau pengunjung menemukan halaman error tentu tidak menyenangkan. Kabar baiknya: dengan perencanaan yang tepat, proses ini bisa dilakukan hampir tanpa downtime sama sekali.

Artikel ini memandu Anda langkah demi langkah — mulai dari backup, pemilihan tools, hingga strategi DNS cutover — sehingga pengunjung tidak merasakan perbedaan apa pun selama proses migrasi.


Persiapan Sebelum Migrasi

Sebelum menyentuh satu file pun, lakukan tiga hal berikut:

  1. Backup lengkap di hosting lama. Gunakan fitur backup di cPanel atau plugin. Ini adalah jaring pengaman Anda.
  2. Catat konfigurasi penting: versi PHP, ekstensi PHP yang aktif (mis. imagick, redis), dan nilai max_upload_size / memory_limit.
  3. Rendahkan TTL DNS — ubah TTL record A domain Anda menjadi 300 detik (5 menit) setidaknya 24–48 jam sebelum migrasi. Ini mempercepat propagasi DNS saat cutover nanti.
# Contoh TTL record di zone file
yourdomain.com.  300  IN  A  111.222.333.444

Metode 1 — All-in-One WP Migration (Rekomendasi untuk Pemula)

Plugin ini ideal untuk site berukuran di bawah 512 MB (batas gratis) atau hingga beberapa GB jika menggunakan ekstensi berbayar.

Langkah di Hosting Lama

  1. Install dan aktifkan plugin All-in-One WP Migration dari direktori WordPress.
  2. Buka All-in-One WP Migration → Export → File.
  3. Tunggu proses ekspor selesai, lalu unduh file .wpress ke komputer Anda.

Langkah di Hosting Baru

  1. Install WordPress baru di hosting baru (bisa via Softaculous di cPanel).
  2. Install plugin yang sama, lalu buka Import.
  3. Upload file .wpress tadi.
  4. Setelah selesai, plugin akan meminta Anda login ulang — gunakan kredensial dari site lama.

Tips: Jika file melebihi limit upload server, naikkan nilai upload_max_filesize, post_max_size, dan memory_limit di php.ini atau .htaccess hosting baru sebelum import.

; Tambahkan di php.ini atau .user.ini
upload_max_filesize = 512M
post_max_size = 512M
memory_limit = 256M

Metode 2 — Duplicator Pro (Untuk Site Menengah hingga Besar)

Duplicator lebih fleksibel dan cocok untuk site yang lebih kompleks.

Membuat Package di Hosting Lama

  1. Install plugin Duplicator dan buka Duplicator → Packages → Create New.
  2. Ikuti wizard: scan akan mendeteksi potensi masalah (file besar, permission, dll).
  3. Dua file akan dihasilkan: installer.php dan archive.zip. Unduh keduanya.

Deploy di Hosting Baru

  1. Buat database MySQL baru di cPanel hosting baru (catat nama DB, username, password).
  2. Upload installer.php dan archive.zip ke folder public_html via File Manager atau FTP.
  3. Akses http://hostingbaru-ip-atau-domain-sementara.com/installer.php di browser.
  4. Masukkan detail database baru, ikuti langkah hingga selesai.
  5. Hapus installer.php dan file dup-installer setelah proses berhasil demi keamanan.

Metode 3 — Manual via cPanel (Kontrol Penuh)

Metode ini paling fleksibel dan direkomendasikan untuk developer atau sysadmin.

Step 1: Backup File via cPanel

Login ke cPanel hosting lama → File Manager atau gunakan Backup Wizard untuk mengunduh seluruh public_html.

Alternatif cepat via SSH:

tar -czf backup-wordpress.tar.gz /home/username/public_html/

Step 2: Export Database

Buka phpMyAdmin di cPanel lama → pilih database WordPress Anda → klik Export → Quick → Go. Simpan file .sql.

Atau via SSH:

mysqldump -u db_user -p db_name > backup-database.sql

Step 3: Upload ke Hosting Baru

  1. Upload file tar.gz ke public_html hosting baru via FTP (gunakan FileZilla) atau SSH scp.
  2. Ekstrak:
tar -xzf backup-wordpress.tar.gz -C /home/username/public_html/

Step 4: Import Database

Buat database baru di cPanel baru → buka phpMyAdmin → pilih database tersebut → Import file .sql.

Step 5: Update wp-config.php

Edit file wp-config.php untuk mencocokkan kredensial database baru:

define( 'DB_NAME', 'nama_database_baru' );
define( 'DB_USER', 'user_database_baru' );
define( 'DB_PASSWORD', 'password_baru' );
define( 'DB_HOST', 'localhost' );

Step 6: Update URL di Database (Jika Domain Berubah)

Gunakan plugin Better Search Replace atau WP-CLI:

wp search-replace 'https://domainlama.com' 'https://domainbaru.com' --all-tables

Handling Site Besar (>2 GB)

Site dengan ukuran besar memerlukan pendekatan berbeda:

Tantangan Solusi
Timeout saat upload Gunakan FTP/SCP alih-alih File Manager browser
Limit upload PHP Edit php.ini, gunakan SSH untuk import langsung
File .sql besar Split dengan mysqldump --extended-insert atau gunakan mydumper
Banyak file media Sinkronisasi folder wp-content/uploads via rsync

Sinkronisasi Inkremental dengan rsync

Untuk site aktif dengan banyak konten media, rsync memungkinkan sinkronisasi berulang tanpa mengulang dari awal:

rsync -avz --progress -e ssh \
  [email protected]:/home/user/public_html/wp-content/uploads/ \
  /home/user/public_html/wp-content/uploads/

Jalankan perintah ini beberapa kali menjelang cutover sehingga hanya file terbaru yang perlu disinkronisasi, meminimalkan jeda.


Strategi DNS Cutover untuk Downtime Minimal

Ini bagian paling kritis. Berikut urutan yang benar:

Fase 1: Testing di Hosting Baru Tanpa Mengubah DNS

Sebelum pindah DNS, uji site di hosting baru menggunakan file hosts lokal:

# Windows: C:\Windows\System32\drivers\etc\hosts
# Linux/macOS: /etc/hosts

111.222.333.444  yourdomain.com
111.222.333.444  www.yourdomain.com

Akses site dari browser Anda — jika tampil dengan benar, hosting baru siap.

Fase 2: Sinkronisasi Terakhir

Tepat sebelum cutover, jalankan satu kali lagi:

  • rsync untuk file media terbaru.
  • Export database terbaru dari hosting lama dan import ke hosting baru.

Fase 3: Ubah Record DNS

Ubah record A domain ke IP hosting baru. Karena TTL sudah Anda turunkan menjadi 5 menit sebelumnya, propagasi akan selesai dalam hitungan menit, bukan jam.

Fase 4: Monitor dan Verifikasi

  • Gunakan dnschecker.org untuk memantau propagasi dari berbagai lokasi.
  • Cek SSL certificate — jika menggunakan Let's Encrypt, re-issue di hosting baru.
  • Test form, checkout (jika WooCommerce), dan login admin.
  • Pantau error log di hosting baru selama 24 jam pertama.

Fase 5: Jangan Hapus Hosting Lama Dulu

Tunggu minimal 48–72 jam sebelum menutup hosting lama. Jika ada masalah tak terduga, Anda bisa kembali mengubah DNS dalam hitungan menit.


Checklist Pasca-Migrasi

  • Semua halaman dapat diakses (tidak ada 404 atau 500)
  • Form kontak dan fitur interaktif berfungsi
  • Email transaksional terkirim (cek konfigurasi SMTP/plugin mail)
  • SSL aktif dan redirect HTTP → HTTPS berjalan
  • Google Search Console — update sitemap jika ada perubahan URL
  • Cek Google Analytics masih merekam data
  • Backup pertama di hosting baru sudah dijadwalkan otomatis

Kesimpulan

Migrasi WordPress tanpa downtime bukan sekadar teori — ini sepenuhnya bisa dilakukan dengan kombinasi backup yang solid, pengujian di hosting baru sebelum cutover, dan strategi TTL DNS yang dipersiapkan lebih awal.

Pilih tools sesuai ukuran dan kompleksitas site Anda: All-in-One WP Migration untuk kemudahan, Duplicator untuk fleksibilitas menengah, atau metode manual via cPanel untuk kontrol penuh. Untuk site besar, rsync dan mysqldump via SSH adalah sahabat terbaik Anda.

Jika Anda sedang mencari hosting baru yang mendukung migrasi mudah dengan akses SSH, cPanel penuh, dan performa yang andal, GoCelerus menawarkan layanan shared hosting dan VPS yang bisa menjadi pilihan solid untuk hosting WordPress Anda berikutnya.

Welcome to GoCelerus

Save 15% on any plan

Launch promo — 15% off any plan

Your coupon code

LAUNCH15
Browse plans