Copy MySQL Database
This page explains the Copy MySQL Database feature in GoAdmio. It lets you copy a MySQL/MariaDB database from one hosting account to another on the same server, or duplicate a database for the same account — without exporting and re-importing SQL dumps manually.
Location: Admin Panel → Databases → Copy MySQL Database
Location (User Panel): Databases → Copy MySQL Database
Overview
Moving or duplicating a database is a common task: staging a site, migrating to a new domain, cloning a WordPress install, or creating a development copy before an upgrade. Doing it by hand means mariadb-dump, scp, mariadb import, creating users, granting privileges, and editing the application config — easy to get wrong.
The Copy MySQL Database tool handles that in one operation. It:
- Copies the source database's tables, data, indexes, views, routines, and triggers
- Creates a destination database and database user (if they do not exist)
- Grants the destination user the appropriate privileges
- Copies between accounts (cross-account) or duplicates within the same account
- Preserves the original database (unless you explicitly choose to replace it)
/go/serversync) or /go/copydatabase (see Command Reference). To copy a single table, use Copy Table (/go/copytable).
When to Use Copy MySQL Database
| Scenario | Use this tool? |
|---|---|
| Duplicate a WordPress database before an upgrade (same account) | ✅ Yes |
| Clone a database from one account to another (e.g., staging → production) | ✅ Yes |
| Migrate a database when moving a site to a new domain under a different account | ✅ Yes |
| Create a development copy of a production database | ✅ Yes |
| Copy one table between databases | ❌ Use Copy Table (/go/copytable) |
| Copy a database to another server | ❌ Use Server-to-Server Sync (/go/serversync) or /go/copydatabase |
| Rename a database | ❌ Not supported — create a new one and copy |
| Move a database (remove the source) | ⚠️ Copy, verify, then drop the source manually |
What the Page Shows
| Field | Description |
|---|---|
| Source Account | The hosting account that owns the source database |
| Source Database | The database to copy |
| Destination Account | The account that will own the new database (may be the same as source) |
| Destination Database | The name of the new database (must be a new name) |
| Destination User | The database user for the new database (must be a new user) |
| Password | The password for the destination user (with a Generate Password button) |
| Overwrite | Whether to replace the destination database if it already exists |
| Copy / Run | Execute the copy operation |
| Status / Output | Result of the copy |
> Tip: The Destination Database and Destination User fields accept a suffix — GoAdmio adds the destination account's username as the prefix automatically, following the same convention as MySQL Databases.
How to Copy a Database
Via the Admin Panel
- Log in to the GoAdmio Admin Panel (or User Panel).
- Navigate to Databases → Copy MySQL Database.
- Under Source, select the Source Account and the Source Database.
- Under Destination, choose:
- Enter the Destination Database suffix (e.g.,
wordpress_copy). - Enter the Destination User suffix (e.g.,
wpuser_copy). - Click Generate Password or enter your own.
- Choose whether to Overwrite an existing destination database.
- Click Copy (or Run).
Via CLI
GoAdmio provides a command-line equivalent for the same operation. See Command Reference for the exact syntax in your version. The general form is:
```bash
/go/copydatabase <source_db> <destination_db> <destination_user> <destination_password>