Artikel ini akan menunjukkan berbagai cara untuk mengkloning atau menggandakan tabel MySQL. Semua metode yang tersedia dibahas. Pilih proses yang sesuai dengan kebutuhan Anda
Menggunakan Baris Perintah
Metode #1. Skema klon dan data menggunakan CREATE TABLE … SELECT
Ini adalah cara termudah untuk mengkloning/menduplikasi database dengan skema dan semua data. Ini menggunakan pernyataan CREATE TABLE .. SELECT untuk mengkloning skema dan data tabel. Periksa dokumentasi untuk CREATE TABLE… SELECT di sini. https. //dev. mysql. com/doc/refman/5. 6/id/buat-tabel-pilih. html
CREATE TABLE new_table_name AS [SELECT * FROM existing_table_name];
Gunakan ini saat Anda ingin semua data disalin dari tabel yang ada ke tabel baru
Kondisi apa pun dapat digunakan dalam kueri SELECT untuk memastikan bahwa hanya baris yang diinginkan yang disalin ke tabel baru
Catatan. atribut dan indeks AUTO_INCREMENT tidak disalin ke tabel baru ini. Juga, beberapa konversi tipe data dapat terjadi
Metode #2. Skema klon hanya menggunakan CREATE TABLE… LIKE
Proses ini hanya mengkloning skema tabel. Tidak ada data yang disalin. Ini menggunakan pernyataan CREATE TABLE … LIKE untuk membuat tabel baru dari tabel yang sudah ada. Periksa dokumentasi untuk CREATE TABLE… LIKE here. https. //dev. mysql. com/doc/refman/8. 0/en/buat-tabel-seperti. html
CREATE TABLE new_table_name LIKE existing_table_name;
_Gunakan proses ini jika Anda tidak menginginkan data apa pun dari tabel yang ada
Catatan. indeks disalin tetapi atribut AUTO_INCREMENT tidak
Metode #3. Tabel klon menggunakan mysqldump
Proses ini menggunakan mysqldump untuk mengkloning tabel dengan atau tanpa data. Gunakan ini jika Anda ingin mengkloning/menggandakan tabel dari satu server ke server lainnya
Ini adalah proses 2 langkah
Langkah 1. Ekspor tabel dalam file SQL
Untuk mengekspor skema tabel dengan data, gunakan perintah berikut
mysqldump -u db_user_name -p db_password database_name table_name > backupfile.sql
Atau untuk mengekspor skema tabel saja [tanpa data] gunakan perintah berikut, yang menyertakan tanda '-d'
mysqldump -u db_user_name -p db_password -d database_name table_name > backupfile.sql
Langkah 2. Impor tabel dari file SQL
mysqldump -u db_user_name -p db_password database_name < backupfile.sql
_Dalam metode ini, semua batasan tabel akan disalin. Jadi tipe data kolom, indeks, dan properti AUTO_INCREMENT akan sama dengan tabel sumber
Menggunakan GUI
Meja Kerja MySQL
Meja kerja MySQL tidak menyediakan opsi apa pun untuk mengkloning tabel secara langsung. Meskipun itu memberikan opsi untuk menyalin skema pernyataan buat. Untuk mengakses itu
Ringkasan. tutorial ini menunjukkan cara menyalin database MySQL di server yang sama dan dari server ke server lainnya
Salin database MySQL di server yang sama
Untuk menyalin database MySQL, Anda harus mengikuti langkah-langkah ini
- Pertama, buat database baru menggunakan pernyataan
1
Code language: SQL [Structured Query Language] [sql]> CREATE DATABASE classicmodels_backup;
- Kedua, ekspor semua objek basis data dan data dari basis data yang ingin Anda salin menggunakan alat
2
Code language: SQL [Structured Query Language] [sql]> CREATE DATABASE classicmodels_backup;
- Ketiga, impor file dump SQL ke database baru
Untuk demonstrasi, kami akan menyalin database
_3 ke databaseCode language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
4Code language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
Langkah 1. Buat database
_5Code language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
Pertama, masuk ke server database MySQL
Code language: SQL [Structured Query Language] [sql]
>mysql -u root -p Enter password: **********
Kemudian, gunakan pernyataan
_1 sebagai berikutCode language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
Code language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
Ketiga, gunakan perintah
_7 untuk memverifikasiCode language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
Code language: SQL [Structured Query Language] [sql]
> SHOW DATABASES
Server database MySQL mengembalikan output berikut
Code language: SQL [Structured Query Language] [sql]
+----------------------+ | Database | +----------------------+ | classicmodels | | classicmodels_backup | | information_schema | | mysql | | performance_schema | | sys | +----------------------+ 6 rows in set [0.00 sec]
Seperti yang Anda lihat, kami telah berhasil membuat database
4Code language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
Langkah 2. Buang objek database dan data ke dalam file SQL menggunakan alat
2Code language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
Misalkan, Anda ingin membuang objek database dan data dari
3 database ke file SQL yang terletak di folderCode language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
1, berikut adalah perintahnyaCode language: SQL [Structured Query Language] [sql]
> SHOW DATABASES
Code language: SQL [Structured Query Language] [sql]
>mysqldump -u root -p classicmodels > d:\db\classicmodels.sql Enter password: **********
Pada dasarnya, perintah ini menginstruksikan
_2 untuk masuk ke server MySQL menggunakan akun pengguna root dengan kata sandi dan mengekspor objek basis data dan data dari basis dataCode language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
3 keCode language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
4. Perhatikan bahwa operator [Code language: SQL [Structured Query Language] [sql]
> SHOW DATABASES
5] berarti mengeksporCode language: SQL [Structured Query Language] [sql]
> SHOW DATABASES
Langkah 3. Impor file
_4 ke dalam database ________5______4Code language: SQL [Structured Query Language] [sql]
> SHOW DATABASES
Code language: SQL [Structured Query Language] [sql]
>mysql -u root -p classicmodels_backup < d:\db\classicmodels.sql Enter password: **********
Perhatikan bahwa operator [
_8] berarti mengimporCode language: SQL [Structured Query Language] [sql]
> SHOW DATABASES
Untuk memverifikasi impor, Anda dapat melakukan pemeriksaan cepat dengan menggunakan perintah
9Code language: SQL [Structured Query Language] [sql]
> SHOW DATABASES
Code language: SQL [Structured Query Language] [sql]
> SHOW TABLES FROM classicmodels_backup;
Itu mengembalikan output berikut
Code language: SQL [Structured Query Language] [sql]
+--------------------------------+ | Tables_in_classicmodels_backup | +--------------------------------+ | customers | | employees | | offices | | orderdetails | | orders | | payments | | productlines | | products | +--------------------------------+ 8 rows in set [0.01 sec]
Seperti yang Anda lihat, kami telah berhasil menyalin semua objek dan data dari database
3 ke databaseCode language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
4Code language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
Salin database MySQL dari server ke yang lain
Untuk menyalin database MySQL dari server lain, Anda menggunakan langkah-langkah berikut
- Ekspor database di server sumber ke file dump SQL
- Salin file dump SQL ke server tujuan
- Impor file dump SQL ke server tujuan
Mari kita lihat cara menyalin database
3 dari server ke server lainCode language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
Pertama, ekspor database
_3 ke fileCode language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
4Code language: SQL [Structured Query Language] [sql]
+----------------------+ | Database | +----------------------+ | classicmodels | | classicmodels_backup | | information_schema | | mysql | | performance_schema | | sys | +----------------------+ 6 rows in set [0.00 sec]
Code language: SQL [Structured Query Language] [sql]
>mysqldump -u root -p --databases classicmodels > d:\db\db.sql Enter password: **********
Perhatikan bahwa opsi
_5 memungkinkanCode language: SQL [Structured Query Language] [sql]
+----------------------+ | Database | +----------------------+ | classicmodels | | classicmodels_backup | | information_schema | | mysql | | performance_schema | | sys | +----------------------+ 6 rows in set [0.00 sec]
2 untuk menyertakan pernyataanCode language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
7 danCode language: SQL [Structured Query Language] [sql]
+----------------------+ | Database | +----------------------+ | classicmodels | | classicmodels_backup | | information_schema | | mysql | | performance_schema | | sys | +----------------------+ 6 rows in set [0.00 sec]
8 dalam file dump SQL. Pernyataan ini akan membuat databaseCode language: SQL [Structured Query Language] [sql]
+----------------------+ | Database | +----------------------+ | classicmodels | | classicmodels_backup | | information_schema | | mysql | | performance_schema | | sys | +----------------------+ 6 rows in set [0.00 sec]
_3 di server tujuan dan menjadikan database baru sebagai database default untuk memuat dataCode language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
Singkatnya, pernyataan berikut disertakan di awal file dump SQL saat kami menggunakan opsi
5Code language: SQL [Structured Query Language] [sql]
+----------------------+ | Database | +----------------------+ | classicmodels | | classicmodels_backup | | information_schema | | mysql | | performance_schema | | sys | +----------------------+ 6 rows in set [0.00 sec]
Code language: SQL [Structured Query Language] [sql]
CREATE DATABASE `classicmodels`. USE `classicmodels`;
Ketiga, import file
_4 ke database server dengan asumsi db. sql file disalin ke c. folder \tmp\Code language: SQL [Structured Query Language] [sql]
+----------------------+ | Database | +----------------------+ | classicmodels | | classicmodels_backup | | information_schema | | mysql | | performance_schema | | sys | +----------------------+ 6 rows in set [0.00 sec]
0Code language: SQL [Structured Query Language] [sql]
> CREATE DATABASE classicmodels_backup;
Dalam tutorial ini, Anda telah mempelajari langkah demi langkah cara menyalin database MySQL di server yang sama dan menyalin database dari server ke server lain.