Copying a Database in MySQL
Creating a copy of an existing database is known as the MySQL Clone
method. Cloning involves creating a copy of the table structure, constraints, functions, procedures, triggers, and all functionality associated with the table in one go.
These features make it more reliable for users, as even if one node fails, the replica or clone can still provide services. Making database copies and clones can help when unexpected loss or failure occurs.
The backup process can be done daily or at specific intervals. The method to replicate a database on the same server instance is as follows.
Copying a database on the same server instance in MySQL
Copy the source database into a SQL script file. Create a new target database and then import the SQL script file into the new database.
This is a three-step process.
> mysql -u root -p
****
> mysqldump -u root -p firstDb > firstDbDump.sql
> create database newDb;
> mysql -u root -p newDb < firstdump.sql
> show databases;
> use newDb;
> show tables;
The detailed description and commands of the first method above are as follows.
-
To proceed with the first method, install MySQL server 8.0 in your local system.
-
Continue with the installation process and after successful installation, reach
bin
the path. -
Open the environment variables and add the path to the MySQL system in the system PATH variable. It allows access to MySQL from anywhere in the file system.
-
Open a command prompt and enter the command shown above. This command enables the use of the MySQL prompt.
-u
The attribute specifies the username that executes the value;root
it is the username.-p
The attribute specifies the password, which is located on another line.The password is never added to the command. It appears in encrypted format on another line.
-
Enter the command to copy the files from this location to a temporary intermediate file.
-
mysqldump -u root -p database_name_to_be_cloned > filename_for_clone
ismysqldump
the command to specify the utility, with the username and password as options.It takes a database name as a parameter and places the dump file into a file.
>
The parameter directs the output to a specific file. -
If no absolute file path is provided for the file name, the SQL file will be stored in the directory where the MySQL server is installed
bin
. -
Create a new database into which the SQL should be imported to clone the existing database.
-
Once a temporary or intermediate file is formed, it can
<
be read again into the newly formed database using the operator. The operator redirects SQL results intonewDb
the database. -
You can check the databases using the command
show databases;
. This command will list all databases in the current SQL connection. -
use
The use command allows the user to use the specified database. The use command takes as an argument the database name. -
show tables
Allows the user to list all the tables present in the database. Therefore, the last three commands can be used to check what was replicated.
|
Using the or pipe operator to duplicate commands in MySQL
One line command takes the dump of a source database and redirects it to another target database.
> mysqldump -u root -p sourceDb | mysql -u root -p targetDb
-
bin
Navigate to the folder where you installed MySQL . -
Open a command prompt from
bin
the folder. -
Use the above command to create the source database and target database separately in advance.
-
This command
mysqldump
creates a SQL dump using the SQL Server 2003 R2 SQL Server 2003 utility, with username and password as mandatory options. And the output is redirected to another target database. -
|
The pipe symbol is primarily a LINUX/UNIX command operator that allows the user to use two or more commands in one line.It acts as a pipe, feeding the output of the first command to another command. The second command is usually separated using the pipe symbol.
-
The command is the same as described in method one and uses the pipe symbol on one line.
Attached is a screenshot of the above command being executed successfully.
When we enter the above command, it prompts the user to enter the password twice. According to the command here, -p
the option is mentioned twice, requiring the user to enter the password for both the databases.
For reprinting, please send an email to 1244347461@qq.com for approval. After obtaining the author's consent, kindly include the source as a link.
Related Articles
If ELSE in MySQL
Publish Date:2025/04/11 Views:85 Category:MySQL
-
In this tutorial, we aim to explore how to use IF ELSE the statement in MySQL. One of the key roles of a data analyst is to gather insights from the data and produce meaningful results. It can be done with the help of several data filtering
DATETIME vs. TIMESTAMP in MySQL
Publish Date:2025/04/11 Views:117 Category:MySQL
-
DATETIME and TIMESTAMP are two different data types that can be used to store values that must contain both a date and a time portion. In this article, we will understand how it is stored in the database and the memory required for ea
Execute multiple joins in one query in MYSQL
Publish Date:2025/04/11 Views:94 Category:MySQL
-
Have you ever wondered how to include multiple joins in one query in MySQL? You have come to the right place. Remember that joins allow us to access information from other tables. This information is included separately to avoid redundancy.
Joining 3 tables in MySQL
Publish Date:2025/04/11 Views:187 Category:MySQL
-
In this tutorial, we will learn how to join three tables in MySQL. Businesses and organizations may have to visualize three tables simultaneously based on certain matching columns common to all three tables. This operation is allowed in MyS
Use of UPDATE JOIN in MySQL
Publish Date:2025/04/11 Views:85 Category:MySQL
-
This tutorial will explain how to use the statement in MySQL database UPDATE JOIN . We generally use joins to iterate over the rows in a particular table which may or may not have similar rows in other tables. We can UPDATE use JOIN the cla
How to use the Row_Number() function in MySQL
Publish Date:2025/04/11 Views:142 Category:MySQL
-
In this tutorial, we will explain how to use the VALUES function in MySQL ROW_NUMBER() . This is a sorting method that assigns consecutive numbers within a partition starting from 1. It is important to note that no two rows within a partiti
Multiple primary keys in MySQL
Publish Date:2025/04/11 Views:66 Category:MySQL
-
In this tutorial, our goal is to explore the concept of multiple primary keys for a table in MySQL. Many times, businesses and organizations have to assign certain columns as primary keys. This primary key has multiple uses and reasons to b
Displaying foreign keys in MySQL
Publish Date:2025/04/11 Views:55 Category:MySQL
-
In this tutorial, we aim to explore how to display foreign keys for tables and columns in MySQL. The type of key that references a primary key, also known as the primary key of another table, is called a foreign key. Understanding the forei
Select first N rows in MySQL
Publish Date:2025/04/11 Views:85 Category:MySQL
-
Sometimes, you have to select first N rows of MySQL database according to your project requirements. n The value of varies according to the requirement; it can be TOP 1 row or TOP 30 rows. We will learn how to select top N rows using the cl