MariaDB Database Server Cloning
XLServer provides advanced cloning capabilities for MariaDB database servers, allowing teams to quickly provision test, QA, development, and troubleshooting environments.
Two types of clones are supported:
- Virtual Clone: Lightweight, snapshot-based, minimal storage, very fast.
- Physical Clone: Full database duplication, independent instance, slower to provision.
From XLServer, a virtual clone can be converted into a physical clone at any time.
⚙️ Prerequisites
Before creating MariaDB clones, ensure:
- XLServer has SSH access to the target host.
- Target environment is already added to XLServer.
- Target environment is compatible with the source:
- Same Linux architecture.
- Same distribution and major version.
- Target MariaDB binary must be equal or higher than source version.
- Target MariaDB hosts must have NFS client installed.
🌀 Clone Types
Virtual Clone
- Created using snapshot technology.
- Very fast (typically < 30s).
- Requires minimal disk space.
- Supports reset, share, convert-to-physical, start, stop.
Physical Clone
- Full copy of source MariaDB database server.
- Requires disk space equal to the source.
- Slower to provision (size-dependent).
- Behaves as a completely independent instance.
🌐 Create MariaDB Virtual Clone
-
Open MariaDB server detail page.
-
Click Actions > Create Virtual Clone → Confirm.
-
The Cloning Wizard is displayed.
-
Select the Target Environment → Next.
-
On Database Configuration page, provide:
- Port Number
- Mount Base (NFS mount point)
- Parallel threads (for restore or SQL execution parallelism)
- Post Script Path (optional SQL script after clone creation)
Click Next.
-
On Parameters page, adjust clone parameters if necessary.
Values are inherited from attached template or source DB.
Click Next.
-
Review the Summary page.
-
Click FINISH.
-
Track job execution in the Job list.
-
Open the Virtual Clone detail page.
⚡ Virtual clones consume very little disk space compared to the source server.
📋 MariaDB Virtual Clone Management
Configuration Parameters
Left side panel displays configuration details:
Parameter | Description |
---|---|
Project | Project owning the clone |
Environment | Target environment |
Vendor | MARIADB |
Repository | mariadbd binary path |
Version | MariaDB server version |
Platform | 32-bit or 64-bit |
Port | Connection port |
Socket | Connection socket |
Datadir | Data directory |
Server ID | MariaDB server identifier |
JDBC Service | JDBC connection string |
Startup Timeout | Timeout before throwing startup error |
Source Database | Name of source DB server |
Mount Base | NFS mount point |
Database Type | Clone Database |
DB User | Clone DB user |
Specific Post Script Execution | Status (none, failed, success) |
Generic Post Script Execution | Status (none, failed, success) |
Datamasking | Status (none, failed, success) |
Creation Time | Timestamp of clone creation |
Created By | User who created the clone |
Dashboard Cards
The right side displays:
- Disk Usage
- Disk Usage Ratio vs live DB
- Clone Age
- Snapshot Version (increments on reset)
Parent Container
Information about snapshot lineage:
- Last Checkpoint LSN
- Last Change Time
- Parent snapshot creation time
- List of parent schemas
🔑 Changing Database Credentials
- Click pencil icon near DB User.
- Enter new username/password.
- Click VALIDATE.
⚡ Actions on MariaDB Virtual Clones
Actions available under Actions menu:
⏹ Stop
- Shuts down MariaDB process.
- Unmounts NFS from host.
▶️ Start
- Mounts NFS and starts MariaDB process.
🔄 Reset
- Resets clone to initial state.
- Changes since creation are discarded.
- Snapshot version increments.
🤝 Share
- Creates another clone on same/new environment.
- Very fast (no masking/post-scripts executed).
Steps:
- Actions > Share → Confirm.
- Select target environment.
- Enter:
- Port Number
- Mount Base
- Parallel Threads
- Review Summary → Finish.
- Track execution progress.
- Shared clone appears in clone list.
💽 Convert to Physical
- Converts virtual clone to physical (copies DB files locally).
- Requires enough disk space (same as source).
Steps:
- Actions > Convert to Physical → Confirm.
- Enter Local Directory on target host.
- Review Summary → Finish.
- Track job progress.
- Converted clone is tagged as Physical.
The database duplication script automatically detects if the parallel command is available on your system:
- With parallel installed: Database files will be copied concurrently based on the parallel degree specified.
- Without parallel: Files will be copied sequentially (one by one), which takes considerably longer.
🗑 Delete
- Deletes virtual clone metadata from XLServer.
- Confirmation required.
🏗️ Create MariaDB Physical Clone
-
Open MariaDB database detail page.
-
Click Actions > Create Physical Clone → Confirm.
-
Cloning wizard appears.
-
Select Target Environment → Next.
-
On Database Configuration page, enter:
- Port Number
- Mount Base
- Post Script Path (optional)
- Parallel threads
-
In Parameters page, adjust parameters.
-
Review Summary page.
-
Click FINISH.
-
Track job execution.
Physical clones take time depending on source DB size.
-
Metadata appears in detail page.
Physical clones have no container in XLServer.
The database duplication script automatically detects if the parallel command is available on your system:
- With parallel installed: Database files will be copied concurrently based on the parallel degree specified.
- Without parallel: Files will be copied sequentially (one by one), which takes considerably longer.
🗑 Delete Physical Clone
- Actions > Delete.
- Removes clone metadata from XLServer only.
- Running database continues independently.
✅ Summary
- Virtual Clones: Quick, lightweight, minimal storage, easily reset or shared.
- Physical Clones: Full, independent MariaDB servers, resource-intensive, slower to provision.
- Both types provide safe, isolated environments without impacting production.