Migrate an existing FiveM server to VeryCloud
Move your FiveM server from another host (Zap, OVH, third-party host) to a VeryCloud VPS without data loss. Covers migrating artifacts, resources, MySQL database and txAdmin configuration.
Introduction
Migrating a FiveM server can seem intimidating, but it's actually quite simple: everything lives in 2 folders (artifacts + server-data) and 1 MySQL database. This guide details the full procedure, including classic pitfalls (MySQL character sets, absolute paths in config, Cfx.re license).
Prerequisites
- A VeryCloud VPS already ordered (Debian 12 / Ubuntu 22.04+ recommended)
- Root access to the destination VPS
- SSH or panel access on the old server (Zap, other host)
- An SFTP client like FileZilla or WinSCP
Step 1: Prepare the destination VPS
First follow the FiveM + txAdmin guide to install artifacts, MariaDB and create the fivem user.
At the end of this step, you have:
/home/fivem/server/: FiveM artifacts/home/fivem/server-data/: empty folder (will be replaced)- MariaDB installed and
fivemuser created
Step 2: Export the database from the old server
On the old server, open an SSH terminal and export the database:
mysqldump -u OLD_USER -p DATABASE_NAME > fivem-backup.sql
If you're on Zap, phpMyAdmin or a panel, use the Export → SQL feature from the interface.
Download the fivem-backup.sql file locally.
Tip: if the database is very large (>500 MB), compress it before transfer:
gzip fivem-backup.sql
Step 3: Archive the server-data folder
On the old server:
cd /path/to/server-data/..
tar -czf server-data-backup.tar.gz server-data/
Download server-data-backup.tar.gz locally.
On Zap or similar limited-access host, use SFTP to download the entire resources/, cache/, server.cfg folder, etc.
Important note: exclude the cache/ folder from transfer, it will be regenerated on startup. It can be several GB and slow things down unnecessarily.
tar -czf server-data-backup.tar.gz --exclude='server-data/cache' server-data/
Step 4: Transfer files to VeryCloud
From your local machine, use scp or SFTP to upload to the VeryCloud VPS:
scp fivem-backup.sql root@VERYCLOUD_VPS_IP:/tmp/
scp server-data-backup.tar.gz root@VERYCLOUD_VPS_IP:/tmp/
Or via FileZilla/WinSCP on SFTP port 22.
Step 5: Import the database
On the VeryCloud VPS:
sudo mysql -u root -p
CREATE DATABASE fivem CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
GRANT ALL PRIVILEGES ON fivem.* TO 'fivem'@'localhost';
EXIT;
Import the dump:
sudo mysql -u root -p fivem < /tmp/fivem-backup.sql
Verify:
sudo mysql -u root -p -e "USE fivem; SHOW TABLES;"
Step 6: Restore the server-data folder
sudo su - fivem
cd ~
rm -rf server-data
tar -xzf /tmp/server-data-backup.tar.gz
chown -R fivem:fivem server-data
Step 7: Adapt the configuration
Edit server.cfg:
nano ~/server-data/server.cfg
Modify:
Cfx.re license
The old license is tied to the old IP. Get it from https://keymaster.fivem.net and update the IP in the keymaster panel (Edit button on the key).
OR create a new key with the VeryCloud VPS IP.
sv_licenseKey "your-new-cfx-key"
Absolute paths
If the old config contains absolute paths like /home/zap/..., replace them with the new paths:
grep -r "/home/zap" ~/server-data/
sed -i 's|/home/zap|/home/fivem|g' ~/server-data/server.cfg
Public listing IP
sets sv_listingHostOverride "VERYCLOUD_VPS_IP:30120"
MySQL connection
Look for resources that connect to MySQL (oxmysql, mysql-async, ghmattimysql). The connection is usually defined in:
grep -r "mysql_connection_string\|set mysql" ~/server-data/server.cfg
Adapt:
set mysql_connection_string "server=localhost;database=fivem;userid=fivem;password=SecurePassword!"
Step 8: First startup
Launch txAdmin:
~/server/run.sh
Log in to the txAdmin panel (http://IP:40120) with your existing credentials or create a new account.
Start the server. Inspect the logs: everything should load without errors. If a resource crashes, you'll see the error in the live console.
Step 9: Test from the client
Launch GTA V → FiveM → F8 →:
connect VERYCLOUD_VPS_IP:30120
Check:
- Successful connection
- Your data is there (characters, inventory, money, vehicles)
- Resources work (commands, scripts)
Step 10: Migrate DNS and switch over
If you have a domain pointing to your FiveM server, update the DNS records at your registrar:
A fivem.your-domain.com → VERYCLOUD_VPS_IP
TTL: 300 seconds during migration (for fast propagation).
Once migrated and stable, communicate the new IP / new name to your community.
Step 11: Configure systemd service
For automatic startup (see FiveM + txAdmin guide step 10):
sudo systemctl enable --now fivem
Step 12: Keep the old server on standby (recommended)
Don't delete the old server immediately. Keep it on standby for at least 7 days:
- Lets you recover data in case of problems
- Lets you compare if something doesn't work like before
- Additional safety backup
After a week without issues, you can cancel.
Troubleshooting
Badly encoded characters (é, è, à...)
Import was done with wrong charset. Re-create the database and import with:
mysql -u root -p --default-character-set=utf8mb4 fivem < /tmp/fivem-backup.sql
Resource refuses to start
Compare resource versions with the old server. Often: the installed version isn't the same. Inspect the fxmanifest.lua and check dependencies.
"Couldn't find resource X"
The [local]/ folder or a resource folder wasn't transferred properly. Re-compare directory trees between old and new server:
diff <(ssh old-server "ls /path/server-data/resources") <(ls ~/server-data/resources)
Players can't connect but server is running
Check that ports 30120 (TCP+UDP) are properly open in:
- UFW:
sudo ufw status - Netrix (VeryCloud customer area)
server.cfg:endpoint_add_tcp "0.0.0.0:30120"andendpoint_add_udp "0.0.0.0:30120"
Migration from Zap-Hosting (special case)
Zap often uses a forked version of artifacts and a /games/.../ path. To recover the server-data folder from Zap:
- Go to Zap Panel → Manage → SFTP/Backup
- Download the full archive
- Unzip locally, identify the
resources/,server.cfgfolders, and the MySQL database exported from Zap's phpMyAdmin
Useful commands
# Check size of each resource (useful for diagnosis)
du -sh ~/server-data/resources/* | sort -h
# Count tables in the database
sudo mysql -u root -p -e "USE fivem; SHOW TABLES;" | wc -l
# Backup everything at once before final migration
tar -czf full-backup.tar.gz ~/server-data /etc/mysql
mysqldump -u root -p --all-databases | gzip > all-databases.sql.gz
# Check that port 30120 responds
nc -zvu VERYCLOUD_VPS_IP 30120
Conclusion
Migration is done, your community plays on a VeryCloud VPS with optimal performance and French technical support. For a fully managed migration by VeryCloud teams, open a support ticket: we offer a free migration service on Gaming VPS and Dedicated plans.
Resources
- VeryCloud guide — Install FiveM + txAdmin:
/docs/article/fivem-txadmin-install - VeryCloud guide — Diagnose a FiveM crash:
/docs/article/fivem-debug-crash - Official FiveM documentation: https://docs.fivem.net
- Cfx.re Keymaster: https://keymaster.fivem.net


















