Cara menggunakan mysqldump table

Jika Anda tidak ingin kehilangan data, Anda perlu membuat cadangan basis data secara teratur. Client mysqldumpadalah alat command line yang memungkinkan untuk membuat cadangan database MySQL atau kumpulan database.

Sintaks umumnya adalah:

mysqldump -u {username} -p {database_name} > {filename}
  • –user={username}, -u {username}– nama user akun yang akan digunakan untuk menghubungkan ke server MySQL.
  • –password[=password], -p[password]– password akun yang akan digunakan untuk menghubungkan ke server MySQL. Nilai sandi adalah opsional. Jika tidak disediakan, alat akan memintanya. Jika disediakan, tidak boleh ada spasi antara –password=atau -popsi dan password.
  • {database_name} – nama basis data.
  • {filename} – nama file cadangan database.

Cadangkan semua basis data

Opsi ini –all-databases memungkinkan untuk mencadangkan semua basis data.

mysqldump -u root -p --all-databases > backup.sql

Cadangkan hanya database tertentu

Opsi ini –databases memungkinkan untuk mencadangkan hanya database tertentu dengan memberikan nama-namanya ke command line.

mysqldump -u root -p --databases market company > backup.sql

Cadangkan satu basis data

Opsi ini –databases memungkinkan untuk membuat cadangan satu database dengan memberikan nama database ke command line.

mysqldump -u root -p --databases market > backup.sql

Opsi –databasesini dapat dihilangkan jika ingin membuat cadangan satu database.

mysqldump -u root -p market > backup.sql

Perbedaan antara kedua perintah ini adalah, tanpa –databases opsi, cadangan tidak memiliki CREATE DATABASE dan pernyataan USE.

Cadangkan hanya tabel tertentu dari database

Berikan nama database dan nama tabel ke command line tanpa –databases opsi untuk hanya mencadangkan tabel tertentu dari database.

mysqldump -u root -p market products manufacturers > backup.sql

Cadangkan struktur basis data tanpa data

Opsi ini –no-datamemungkinkan untuk membuat cadangan struktur database tanpa data. Jadi file cadangan hanya berisi pernyataan untuk membuat tabel.

mysqldump -u root -p --no-data market > backup.sql

Backup data database tanpa struktur

Opsi ini –no-create-infomemungkinkan untuk membuat cadangan data database tanpa struktur. Jadi file cadangan hanya berisi data tabel.

mysqldump -u root -p --no-create-info market > backup.sql

Cadangkan database tanpa mengunci

Secara default, semua tabel akan dikunci hingga pencadangan selesai. Opsi ini –single-transactionmemungkinkan untuk membuat cadangan basis data tanpa mengunci tabel.

mysqldump -u root -p --single-transaction market > backup.sql

Ketika opsi ini digunakan, cara isolasi transaksi diatur ke REPEATABLE READ dan START TRANSACTION pernyataan dikirim ke server sebelum memulai pencadangan basis data.

Untuk memastikan pencadangan berhasil, koneksi lain tidak dapat menggunakan pernyataan berikut: ALTER TABLE, CREATE TABLE, DROP TABLE, RENAME TABLE, TRUNCATE TABLE.

Opsi ini –single-transactionhanya berfungsi dengan tabel transaksional, seperti InnoDB. Opsi ini tidak akan bekerja dengan tabel MyISAM dan MEMORY. Tabel ini tidak bersifat transaksional, sehingga status dapat diubah selama pencadangan.

Cadangkan database besar

Berguna untuk menggabungkan –single-transactionopsi dengan –quickopsi ketika perlu membuat cadangan database besar.

mysqldump -u root -p --single-transaction --quick market > backup.sql

Saat opsi –quick digunakan, data diambil satu per satu baris daripada mengambil seluruh rangkaian baris dan menyimpannya di memori.

Backup merupakan suatu proses penting dalam berbagai hal, termasuk dalam kaitannya dengan penyimpanan data di dalam database. MySQL sebagai salah satu software database yang banyak digunakan saat ini, memiliki beberapa mekanisme backup. Tools yang membantu proses backup juga banyak tersedia, baik yang gratisan maupun yang berbayar. Salah satu toolsnya adalah dengan menggunakan PHPMyAdmin.

Namun dalam postingan ini, saya ingin lebih menekankan tentang bagaimana melakukan backup database MySQL dengan menggunakan tools bawaan MySQL yaitu mysqldump. Kita tidak perlu menginstall tools ini karena sudah tersedia saat kita menginstall MySQL.

Cara menggunakan mysqldump table
Terus terang, dalam masalah backup database MySQL, saya masih agak kerepotan jika data sudah cukup banyak dan database sudah cukup kompleks. Artinya tidak hanya object berupa tabel saja yang ingin dibackup, namun object database seperti views, trigger dan stored-procedure juga perlu dibackup. Saat ini, belum banyak tools database MySQL, apalagi yang gratisan, yang dapat melakukan backup berbagai object tersebut dengan cukup baik. Bahkan PHPMyAdmin pun belum memiliki dukungan yang penuh terhadap object seperti views, trigger dan stored-procedure tersebut.

Alternatifnya, ternyata kita dapat menggunakan tools mysqldump. Tools ini saya rasa cukup bisa diandalkan, karena unggul dalam hal kecepatan dan keberhasilan melakukan backup. Mysqldump dapat diakses melalui command line, baik di sistem operasi Windows maupun Linux. Secara default, tools ini dapat diakses dari lokasi c:\mysql\bin (Windows), /usr/local/bin (Linux) atau lokasi lain sesuai yang ditentukan saat proses instalasi.

Bentuk Umum Perintah mysqldump

Secara sederhananya, perintah mysqldump memiliki bentuk umum sebagai berikut:

mysqldump –u [user name] –p [database name] > [dump file]

dimana,

  • -u [username] merupakan nama username untuk masuk ke server MySQL. Username yang digunakan harus memiliki hak akses terhadap database yang akan dibackup.
  • -p merupakan opsi untuk memunculkan password. Password akan diminta saat kita menjalankan perintah tersebut di dalam command line.
  • [database name] adalah nama database yang akan dibackup.
  • [dump file] merupakan nama (dan lokasi) dimana hasil backup akan disimpan. Umumnya hasil backup dapat kita simpan ke dalam file dengan ekstensi .sql.

Selain bentuk dasar tersebut, mysqldump juga memiliki berbagai opsi / pilihan. Berikut ini contoh berbagai variasi perintah mysqldump:

Contoh 1. Berikut ini contoh untuk melakukan backup database dengan nama “dbmahasiswa” ke dalam file dengan nama “backup.sql”. Object yang ingin dibackup adalah struktur tabel beserta data di dalamnya.

mysqldump -u root -p dbmahasiswa > backup.sql

Contoh 2. Jika kita ingin hanya melakukan backup terhadap struktur tabelnya saja, tanpa data di dalamnya, dapat dengan menambahkan opsi –no-data , seperti pada contoh berikut ini:

mysqldump -u root -p --no-data dbmahasiswa > backup.sql

Contoh 3. Opsi –no-create-info dapat digunakan untuk melakukan backup terhadap data-nya saja. Perhatikan contoh berikut ini:

mysqldump -u root -p --no-create-info dbmahasiswa > backup.sql

Contoh 4. Sementara contoh berikut ini dapat digunakan jika kita ingin melakukan backup terhadap trigger dan stored-procedure (function) saja.

mysqldump -u root -p --routines --no-create-info --no-data --no-create-db --skip-opt dbmahasiswa > backup.sql

Restore Database Backup

Dan untuk melakukan restore terhadap hasil backup database tersebut, dapat menggunakan bentuk perintah sebagai berikut:

mysql -u root -p dbmahasiswa < backup.sql

Demikian tutorial singkat ini, semoga bermanfaat untuk kita semua.

Referensi

  • Backup dan Restore Database dengan PHPMyAdmin
  • Backing Up Your MySQL Databases With MySQLDump
  • Backing Up and Restoring A MySQL Database
  • Dumping MySQL Stored Procedures, Functions and Triggers

--routines --no-create-info --no-data --no-create-db --skip-opt

Please follow and like us:

Cara menggunakan mysqldump table