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.