Migrate from cPanel Shared Hosting to VPSGrid VPS — VPSGrid Knowledge Base
English
EnglishBeta EspañolPortuguês (Brasil)Coming soonFrançaisComing soonDeutschComing soon
Client Area

Migrate from cPanel Shared Hosting to VPSGrid VPS

0 found helpful

Migrate from cPanel Shared Hosting to VPSGrid VPS

Self-managed migration

VPSGrid does not migrate cPanel accounts for you and does not guarantee zero-downtime cutover. You export, import, test, and update DNS.

Short answer

To migrate from cPanel shared hosting to VPSGrid: create a Full Backup in cPanel, download or SFTP files to your VPSGrid Linux VPS, export MySQL databases with mysqldump --single-transaction, install LEMP/LAMP, import data, test via primary IP, lower DNS TTL, update A records, then obtain SSL with Certbot.

Overview

Site owners leaving generic cPanel shared hosting (HostGator, Bluehost, InMotion, etc.) for an unmanaged VPSGrid Linux VPS who can SSH and manage services. For branded hosts, also read Migrate from HostGator to VPSGrid VPS and Migrate from Bluehost to VPSGrid VPS.

VPSGrid sells unmanaged VPS with root or administrator access. Guest OS configuration, application data, backups, and patching inside the VM are your responsibility unless a separate product is documented. Review What Is an Unmanaged VPS at VPSGrid? and Security Responsibilities on Unmanaged VPS before expecting support to perform stack work.

US-Based VPS infrastructure

VPSGrid provides unmanaged Linux and Windows VPS on US-Based KVM infrastructure with NVMe storage and Proxmox virtualization. You manage the guest OS, applications, backups, and security. Current plan specifications appear at checkout on vpsgrid.net — articles do not publish fixed pricing.

Decision guidance: cPanel shared vs VPSGrid VPS

FactorcPanel sharedVPSGrid VPS
Control panelcPanel includedNo cPanel by default — SSH stack setup
Root accessNoYes — you patch and secure the OS
MigrationProvider may offer paid movesSelf-managed — this guide

cPanel licensing on VPS is a separate third-party cost — VPSGrid does not sell managed cPanel hosting in this KB scope.

Step 1: Inventory cPanel assets

Document domains, addon domains, subdomains, databases, cron jobs, email forwarders, and SSL expiry. Export zone file or screenshot DNS records at registrar. Note each site's document root — addon domains may not use ~/public_html/.

Step 2: Export files from cPanel

Full Backup download

cPanel → Backup → Download a Full Website Backup. Store offsite — Backup Best Practices for VPS Owners. See also cPanel official backup documentation.

SFTP/rsync alternative

Large sites — dry-run first

For first sync, add --dry-run to rsync to preview file list without writing. Remove --dry-run for the real transfer.

rsync -avz --progress cpanel-user@old-host:~/public_html/ /var/www/example.com/
What it does
Synchronizes cPanel document root to VPSGrid web root.
Why it matters
Efficient for large sites; rerun before cutover for delta sync.
Expected result
File counts and bytes transferred increment; site files appear under /var/www.
If it fails
Connection refused or timeout — see SSH Connection Timeout on VPSGrid VPS and Connection Refused Errors on VPSGrid VPS.

Step 3: Export and import databases

cPanel → phpMyAdmin → Export each database, or SSH on source:

mysqldump -u cpanel_dbuser -p --single-transaction --default-character-set=utf8mb4 cpanel_dbname > backup.sql
What it does
Consistent InnoDB dump without long table locks.
Why it matters
Live sites stay online during export; utf8mb4 preserves emoji.
Expected result
backup.sql file created; head -20 backup.sql shows valid SQL header.
If it fails
Access denied — use cPanel database user from cPanel → MySQL Databases.
head -20 backup.sql && file backup.sql
What it does
Verifies dump file integrity and charset before import.
Why it matters
Catches empty or truncated exports early.
Expected result
Shows CREATE TABLE and SET NAMES utf8mb4.
If it fails
Zero-byte file — re-export; check source disk space.
mysql -u root -p -e "CREATE DATABASE appdb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"
What it does
Creates empty database for imported SQL.
Why it matters
WordPress and PHP apps expect utf8mb4 for emoji support.
Expected result
Database appears in SHOW DATABASES.
If it fails
Access denied — use root credentials or sudo mysql.
mysql -u root -p appdb < backup.sql
What it does
Imports cPanel MySQL dump into VPSGrid MariaDB.
Why it matters
Restores posts, orders, and settings from shared host.
Expected result
Import completes without SQL errors; table count matches source.
If it fails
Disk full or max_allowed_packet errors — see Disk Full on VPSGrid VPS: Diagnosis and Cleanup.

Step 4: Configure web server

Create Nginx server block pointing to document root; configure PHP-FPM pool. WordPress-specific nginx rules: How to Deploy WordPress on Ubuntu VPS. WordPress URL updates: WP-CLI search-replace or phpMyAdmin after import.

Step 5: Test before DNS cutover

Map domain locally via /etc/hosts or browse via VPSGrid primary IP with Host header:

curl -I -H "Host: example.com" http://PRIMARY_IP
What it does
Tests vhost response without changing public DNS.
Why it matters
Validates site before cutover risk.
Expected result
HTTP/1.1 200 OK from your application.
If it fails
502 or 404 — fix web stack before DNS; see Fix 502 Bad Gateway on VPSGrid Nginx/Apache.

Step 6: DNS cutover

Follow DNS Cutover Checklist for VPSGrid Migration — lower TTL 24–48 hours ahead, update A record to VPSGrid primary IP, monitor propagation via Point Your Domain to a VPSGrid VPS. VPSGrid does not guarantee zero-downtime migration.

Verify

  1. HTTP and HTTPS load without mixed content warnings
  2. wp-admin or app login succeeds
  3. Cron jobs recreated on VPS — cPanel cron does not transfer automatically
  4. Email still flows if MX unchanged
  5. Search-replace old domain URLs in database if paths changed

Rollback guidance

Keep cPanel account active until TTL expires and stakeholders accept the VPS copy. Revert A record to old IP if critical failure — VPSGrid does not automate rollback.

WordPress-specific cPanel migration notes

After file and database import, update URLs with WP-CLI: wp search-replace 'https://oldsite.com' 'https://example.com' --skip-columns=guid --dry-run then run without --dry-run. Flush permalinks in wp-admin. See Migrate WordPress from Shared Hosting to VPSGrid for the full WordPress path.

Email during cPanel migration

cPanel often hosts mail on the same account. Changing web A records does not move email unless you also migrate MX to VPSGrid or a mail provider. Document SPF, DKIM, and DMARC before any MX edits. Many teams leave mail at the old host indefinitely while moving web only.

PHP version and extension gaps

Shared hosts may run PHP versions or extensions not installed on your fresh VPS. Compare php -m on source (if SSH available) with VPS after stack install. Missing imagick, intl, or redis extensions cause white screens after migration.

Staging rehearsal strongly recommended

Import to a staging directory or subdomain on VPSGrid before production cutover. Staging catches broken cron, hard-coded paths, and license keys tied to old IP — without risking production DNS.

Stakeholder communication

Notify users before DNS cutover. VPSGrid does not guarantee zero-downtime migration.

Rollback DNS plan

Record previous A/AAAA values before change for fast revert.

Email and web separation

Web A record changes alone preserve mail when MX unchanged.

Stakeholder communication

Notify users before DNS cutover. VPSGrid does not guarantee zero-downtime migration.

Rollback DNS plan

Record previous A/AAAA values before change for fast revert.

Email and web separation

Web A record changes alone preserve mail when MX unchanged.

Stakeholder communication

Notify users before DNS cutover. VPSGrid does not guarantee zero-downtime migration.

Rollback DNS plan

Record previous A/AAAA values before change for fast revert.

Email and web separation

Web A record changes alone preserve mail when MX unchanged.

Stakeholder communication

Notify users before DNS cutover. VPSGrid does not guarantee zero-downtime migration.

Rollback DNS plan

Record previous A/AAAA values before change for fast revert.

Email and web separation

Web A record changes alone preserve mail when MX unchanged.

Stakeholder communication

Notify users before DNS cutover. VPSGrid does not guarantee zero-downtime migration.

Rollback DNS plan

Record previous A/AAAA values before change for fast revert.

Email and web separation

Web A record changes alone preserve mail when MX unchanged.

Stakeholder communication

Notify users before DNS cutover. VPSGrid does not guarantee zero-downtime migration.

Rollback DNS plan

Record previous A/AAAA values before change for fast revert.

Email and web separation

Web A record changes alone preserve mail when MX unchanged.

Stakeholder communication

Notify users before DNS cutover. VPSGrid does not guarantee zero-downtime migration.

Rollback DNS plan

Record previous A/AAAA values before change for fast revert.

Email and web separation

Web A record changes alone preserve mail when MX unchanged.

Stakeholder communication

Notify users before DNS cutover. VPSGrid does not guarantee zero-downtime migration.

Rollback DNS plan

Record previous A/AAAA values before change for fast revert.

Email and web separation

Web A record changes alone preserve mail when MX unchanged.

Next learning step

Complete Let's Encrypt SSL with Certbot on VPSGrid after DNS points to your VPSGrid primary IP.

Frequently Asked Questions

Does VPSGrid migrate my cPanel site for me?

No. VPSGrid provides unmanaged KVM VPS — you export from cPanel and import on your Linux VPS. VPSGrid does not operate managed migration services. See Security Responsibilities on Unmanaged VPS for support boundaries.

Do I need cPanel on VPSGrid?

VPSGrid Linux VPS does not include cPanel by default. You configure Nginx or Apache, PHP, and MariaDB via SSH — install LEMP per How to Deploy WordPress on Ubuntu VPS or this ecosystem's stack guides.

How is this different from HostGator migration?

Process parallels provider-specific guides — compare Migrate from HostGator to VPSGrid VPS and Migrate from Bluehost to VPSGrid VPS for panel-specific paths. cPanel-to-VPS steps focus on generic Full Backup and SFTP exports.

Can I avoid downtime?

VPSGrid does not guarantee zero-downtime migration. Lower DNS TTL, sync data, test on VPS IP, then cut over during a planned window — Migrate WordPress from Shared Hosting to VPSGrid covers WordPress-specific timing.

Related Articles

Next steps on VPSGrid

Order a VPSGrid Linux VPS sized for your cPanel site traffic, then execute this self-managed migration checklist. Open a support ticket only for infrastructure blockers — not file transfers.

Need More Help?

Search this knowledgebase for related guides. If the issue appears infrastructure-related (provisioning, billing, primary IP assignment), open a ticket at billing.vpsgrid.net with your service ID, primary IP, and steps already tried. See What Information to Include in a Support Request and Security Responsibilities on Unmanaged VPS for scope.

Was this answer helpful?

Related Articles