Cara mencadangkan dan mengembalikan database mysql secara efisien

Cara mencadangkan dan mengembalikan database mysql secara efisien

MySQL adalah salah satu sistem manajemen basis data relasional open-source paling populer yang digunakan di seluruh dunia. Seiring tumbuhnya data Anda, menjadi semakin penting untuk menjaganya dengan menerapkan cadangan reguler dan memiliki proses restorasi yang andal. Dalam artikel ini, kami akan memberikan panduan komprehensif untuk cadangan dan restorasi database MySQL, mencakup praktik dan alat terbaik yang akan memastikan integritas dan ketersediaan data Anda.

Metode cadangan

Ada beberapa metode untuk membuat cadangan basis data MySQL, termasuk:

  1. Menggunakan mysqldump
  2. Menggunakan MySQL Enterprise Backup (komersial)
  3. Menggunakan cadangan tambahan berbasis log
  4. Menggunakan Snapshot Sistem File

Kami akan fokus pada metode yang paling umum digunakan, mysqldump, karena kesederhanaan dan dukungannya yang luas.

Mencadangkan database mysql menggunakan mysqldump

Mysqldump adalah utilitas baris perintah yang memungkinkan Anda membuat cadangan logis dari database MySQL Anda. Cadangan terdiri dari pernyataan SQL yang dapat dieksekusi untuk menciptakan kembali struktur dan data basis data asli.

Untuk membuat cadangan database MySQL Anda menggunakan MySQLDUMP, gunakan perintah berikut:

mysqldump -u [nama pengguna] -p [kata sandi] [database_name]> [backup_file].SQL
1mysqldump -u [nama pengguna] -p [kata sandi] [database_name]> [backup_file].SQL

Ganti [nama pengguna], [kata sandi], [database_name], dan [backup_file] dengan nama pengguna mysql, kata sandi, nama basis data, dan nama file cadangan yang diinginkan, masing -masing.

Misalnya:

mysqldump -u root -pmysecretpassword my_database> my_database_backup.SQL  

File SQL yang dihasilkan dapat digunakan untuk mengembalikan database Anda ke statusnya pada saat cadangan.

Memulihkan database MySQL

Untuk mengembalikan database MySQL dari cadangan yang dibuat dengan mysqldump, gunakan sintaks berikut:

mysql -u [nama pengguna] -p [kata sandi] [database_name] < [backup_file].sql
1mysql -u [nama pengguna] -p [kata sandi] [database_name] < [backup_file].sql

Ganti [nama pengguna], [kata sandi], [database_name], dan [backup_file] dengan nama pengguna mysql, kata sandi, nama basis data, dan nama cadangan Anda yang sebenarnya, masing -masing.

Misalnya:

mysql -u root -pmysecretpassword my_database < my_database_backup.sql  

Perintah ini akan menjalankan pernyataan SQL dalam file cadangan, menciptakan kembali struktur dan data basis data asli.

Lebih banyak contoh cadangan dan kembalikan

Anda memiliki banyak opsi untuk membuat cadangan basis data. Baca beberapa opsi di bawah ini. Untuk contoh ini, kami telah menggunakan nama database "my_database".

  1. Cadangkan satu basis data mysql tunggal dengan arsip
    mysqldump -u root -pmysecretpassword my_database | gzip> my_database.SQL.GZ  
  2. Cadangkan satu tabel dari database MySQL
    mysqldump -u root -pmysecretpassword my_database my_table> my_table.SQL  
  3. Cadangkan beberapa database di MySQL
    mysqldump -u root -pmysecretpassword ---databases my_database second_database> database_backup.SQL  
  4. Cadangkan semua database yang tersedia di MySQL Server.
    mysqldump -u root -pmysecretpassword --all -databases> all_databases.SQL  
  5. Struktur basis data cadangan saja (tidak ada data)
    mysqldump -u root -pmysecretpassword ---no -data my_database> my_database.SQL  
  6. Data cadangan hanya dari database (tidak ada struktur tabel)
    mysqldump -u root -pmysecretpassword ---no -create -info my_database> my_database.SQL  
  7. Cadangan Basis Data MySQL dalam format XML
    mysqldump -u root -pmysecretpassword --xml my_database> my_database.xml  
  8. Jika Anda memiliki cadangan semua database dengan --All-Databases Opsi, tidak perlu menentukan nama database.
    mysql -u root -pmysecretpassword < all_databases.sql  

Praktik terbaik untuk cadangan dan pemulihan database MySQL

  • Cadangan reguler: Jadwalkan cadangan reguler database MySQL Anda untuk memastikan integritas data dan meminimalkan kehilangan data jika terjadi kegagalan atau korupsi.
  • Penyimpanan di luar kantor: Simpan cadangan Anda di lokasi di luar kantor yang aman untuk melindungi dari kehilangan data karena bencana atau kegagalan perangkat keras.
  • Validasi cadangan: Secara teratur menguji cadangan Anda dengan memulihkannya ke lingkungan yang terpisah, memastikan bahwa mereka valid dan dapat berhasil dipulihkan.
  • Cadangan tambahan: Pertimbangkan untuk menggunakan cadangan tambahan untuk menghemat ruang penyimpanan dan mengurangi waktu yang dibutuhkan untuk proses restorasi.
  • Memantau dan memelihara: Pantau proses cadangan dan restorasi Anda untuk mendeteksi dan menyelesaikan masalah apa pun sebelum menjadi kritis.

Alat untuk Cadangan dan Pemulihan Database MySQL

Selain Mysqldump, ada beberapa alat pihak ketiga yang tersedia untuk membantu dalam proses cadangan dan restorasi:

  • Percona Xtrabackup: Utilitas Sumber Terbuka dan Panas untuk MySQL yang mendukung mesin penyimpanan InnodB dan XTRADB.
  • Mysql Workbench: Alat grafis untuk desain database, administrasi, dan manajemen cadangan yang mencakup fungsi cadangan dan pemulihan bawaan.
  • Navicat untuk mysql: Alat manajemen basis data yang kuat dengan antarmuka yang ramah pengguna yang memungkinkan Anda untuk dengan mudah membuat, mengelola, dan mengembalikan cadangan.
  • MyDumper/MyLoader: Solusi cadangan multi-threaded berkinerja tinggi untuk database MySQL. MyDumper menciptakan cadangan yang konsisten dan tidak memblokir sementara Myloader dengan cepat mengembalikannya secara paralel, mengurangi waktu henti.
  • Automysqlbackup: Skrip shell untuk mengotomatisasi cadangan database MySQL, memungkinkan Anda untuk menjadwalkan cadangan setiap hari, mingguan, dan bulanan dengan pemberitahuan email.
  • Cadangan Ninja: Layanan cadangan basis data yang sederhana, aman, dan hemat biaya yang mendukung MySQL, PostgreSQL, dan database lainnya, memungkinkan Anda untuk mengelola cadangan melalui antarmuka web terpusat.

Kesimpulan

Memastikan keamanan dan integritas basis data MySQL Anda sangat penting untuk setiap organisasi yang mengandalkan aplikasi berbasis data. Dengan mengikuti praktik terbaik dan menggunakan alat yang sesuai, Anda dapat membuat proses cadangan dan restorasi yang kuat untuk database MySQL Anda. Cadangan reguler, penyimpanan di luar lokasi, validasi cadangan, cadangan tambahan, dan pemantauan adalah komponen penting dari strategi cadangan yang sukses. Dengan menguasai teknik -teknik ini dan memanfaatkan alat -alat yang kuat seperti Mysqldump, Percona Xtrabackup, dan MySQL Workbench, Anda dapat secara efektif melindungi data Anda dan memastikan kesinambungan operasi bisnis Anda.