GoAdmio
GoAdmio Documentation

Copy MySQL Database

From the GoAdmio knowledge base.

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)
> Note: This tool copies databases on the same server. To copy a database to a different server, use Server-to-Server Sync (/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

  1. Log in to the GoAdmio Admin Panel (or User Panel).
  2. Navigate to Databases → Copy MySQL Database.
  3. Under Source, select the Source Account and the Source Database.
  4. Under Destination, choose:
- Same account — the account to which the database belongs; enter a new database name and user - Different account — select the destination account; enter a new database name and user
  1. Enter the Destination Database suffix (e.g., wordpress_copy).
  2. Enter the Destination User suffix (e.g., wpuser_copy).
  3. Click Generate Password or enter your own.
  4. Choose whether to Overwrite an existing destination database.
  5. Click Copy (or Run).
The destination database and user are created, the source data is copied, and the destination user receives the required privileges. The source database is left untouched.

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>

↑