5.18.1 mysqlserverclone — Clone Existing Server to Create New Server

This utility permits an administrator to clone an existing MySQL server instance to start a new server instance on the same host. The utility creates a new datadir (--new-data), and starts the server with a socket file. You can optionally add a password for the login user account on the new instance.

If the user does not have read and write access to the folder specified by the --new-data option, the utility shall issue an error.

Similarly, if the folder specified by --new-data exists and is not empty, the utility will not delete the folder and will issue an error message. Users must specify the --delete-data option to permit the utility to remove the folder prior to starting the cloned server.

OPTIONS

mysqlserverclone accepts the following command-line options:

EXAMPLES

The following command demonstrates how to create a new instance of a running server, set the root user password and enable binary logging:

$ mkdir /source/test123
$ mysqlserverclone --server=root:pass@localhost \
  --new-data=/Users/cbell/source/test123 --new-port=3310 \
  --root-password=pass --mysqld=--log-bin=mysql-bin
# Cloning the MySQL server running on localhost.
# Creating new data directory...
# Configuring new instance...
# Locating mysql tools...
# Setting up empty database and mysql tables...
# Starting new instance of the server...
# Testing connection to new instance...
# Success!
# Setting the root password...
# ...done.

PERMISSIONS REQUIRED

The user must have permission to read all databases. Since we are using the root account for these examples (and you typically would), permissions are not generally a problem.

You also need permissions to create the new data directory and write data to it.