Karena ada beberapa cara untuk mem-backup database MySQL di Windows, artikel ini akan mengulas semua opsi yang berbeda sehingga Anda dapat memilih metode yang sesuai untuk Anda. Artikel ini terbatas pada backup database MySQL untuk Microsoft Windows Server saja. Jika Anda menggunakan OS berbasis Linux, lihat Cara Mengotomatiskan Pencadangan Database MySQL di Linux Show
Perhatikan bahwa sebagian besar metode yang dijelaskan dalam artikel ini sepenuhnya kompatibel dengan MariaDB, kecuali cadangan fisik panas Jenis Cadangan MySQLBasis data MySQL mendukung jenis cadangan berikut
Cara membuat logis cadangan MySQLCadangan sederhana database MySQL menggunakan mysqldumpSaat menginstal server MySQL, utilitas cadangan utama diinstal secara otomatis – Sangat mudah untuk mengembalikan database MySQL dari file yang dibuat oleh mysqldump. Database kecil dapat dipulihkan dengan menyalin konten file ke dalam editor SQL dari IDE grafis (misalnya, di MySQL Workbench) dan menjalankannya dari sana. Namun, lebih baik memulihkan database besar menggunakan utilitas perintah mysql. Biasanya, Untuk membuat cadangan semua database server MySQL, jalankan perintah berikut mysqldump --user root --password --all-databases > all-databases.sql Untuk memulihkan data, gunakan perintah berikut mysql --user root --password mysql < all-databases.sql_ Seringkali Anda perlu mencadangkan bukan seluruh server, tetapi database tertentu. Untuk membuang database tertentu, gunakan nama database, bukan parameter –all-database mysql --user root --password [db_name] < [db_name].sql Fakta bahwa cadangan dibuat dalam format terbuka memiliki dua keuntungan penting
Untuk informasi lebih lanjut, lihat dokumentasi mysqldump Cadangkan menggunakan MySQL WorkbenchMySQL Workbench adalah alat untuk desain visual dan bekerja dengan database MySQL. Aplikasi ini juga memungkinkan Anda membuat cadangan logis dari database MySQL Untuk membuat cadangan menggunakan MySQL Workbench, ikuti langkah-langkah ini
Mengekspor setiap tabel ke file terpisah dapat berguna jika Anda tidak perlu memulihkan seluruh database, tetapi beberapa tabel tertentu. Namun, sebagai aturan, ini tidak perlu, dan lebih mudah bekerja dengan satu file cadangan.
Bagian ekspor pada dasarnya adalah antarmuka grafis ke utilitas Selain itu, Anda dapat menggunakan MySQL Workbench sebagai konstruktor parameter untuk mysql --user root --password mysql < all-databases.sql0. Saat Anda mengklik tombol Ekspor, log eksekusi ekspor akan ditampilkan, di mana akan ada perintah mysql --user root --password mysql < all-databases.sql0 dengan parameter yang ditentukan di antarmukaDump recovery menggunakan MySQL Workbench Untuk memulihkan cadangan yang dibuat, ikuti langkah-langkah berikut
Cadangkan menggunakan SQLBackupAndFTPSQLBackupAndFTP adalah utilitas populer untuk membuat cadangan dan memulihkan MySQL, SQL Server, dan PostgreSQL. Utilitas khusus ini dirancang untuk pembuatan cadangan otomatis dan mengirimkannya ke penyimpanan Utilitas ini tidak hanya menyederhanakan pencadangan tetapi juga memungkinkan Anda melakukan pemulihan satu klik, serta mengotomatiskan pemulihan, yang dapat sangat berguna untuk menyinkronkan data atau membuat server pengujian Untuk membuat cadangan database MySQL menggunakan SQLBackupAndFTP, ikuti langkah berikut
Ini adalah pengaturan dasar, tetapi Anda juga dapat menyesuaikan tingkat kompresi cadangan Anda, menetapkan kata sandi untuknya (menggunakan opsi enkripsi), menentukan folder sementara untuk melakukan pekerjaan, menyiapkan skrip untuk dijalankan, dan banyak lagi Untuk mengembalikan database MySQL yang dibuat oleh SQLBackupAndFTP, ikuti saja langkah-langkah ini
Fitur utama SQLBackupAndFTP adalah bahwa utilitas ini tidak hanya menyediakan antarmuka yang baik untuk membuat file cadangan, tetapi juga memungkinkan Anda mengonfigurasi semua langkah yang menyertainya. kompresi, enkripsi, penyimpanan cloud, dan notifikasi gagal Cadangkan menggunakan SqlBakBiasanya, DBA harus memelihara lebih dari satu database. Solusi yang bagus untuk membuat dan memelihara cadangan di banyak server adalah SqlBak Ini adalah aplikasi berbasis agen untuk membuat cadangan, mengompresinya, lalu mengirimkannya ke penyimpanan. Semua pengaturan yang diperlukan dilakukan di browser Untuk membuat cadangan menggunakan SqlBak gunakan petunjuk berikut
Ini adalah pengaturan penting, tetapi Anda juga dapat mengonfigurasi enkripsi cadangan, kompresi, menjalankan skrip, dan banyak lagi Untuk memulihkan database dari cadangan yang dibuat oleh SqlBak, Anda perlu melakukan hal berikut
Cadangkan menggunakan PhpMyAdminPhpMyAdmin adalah alat sumber terbuka untuk mengelola database MySQL melalui browser. Mungkin berlebihan untuk menginstal PhpMyAdmin semata-mata untuk membuat cadangan, tetapi jika Anda sudah menggunakan alat ini, Anda dapat membuat cadangan hanya dalam lima klik
Cukup sering, penyedia hosting tidak menyediakan akses langsung ke database MySQL, melainkan menyediakan akses melalui PhpMyAdmin. Namun, seperti dalam kasus MySQL Workbench, PhpMyAdmin adalah alat untuk bekerja dengan database, dan tidak mendukung mekanisme bawaan untuk mengotomatiskan pembuatan cadangan reguler. Dalam hal ini, SqlBak atau SQLBackupAndFTP dapat membantu dengan menghubungkan ke database MySQL melalui PhpMyAdmin Cara membuat cadangan fisik cadangan basis data MySQLPada akhirnya, database apa pun disimpan dalam file atau sekumpulan file. Jika Anda menyimpan file ini ke lokasi lain, nanti Anda dapat menggunakannya untuk memulihkan data dari jangka waktu tertentu Tidak seperti cadangan logis, cadangan fisik dibuat jauh lebih cepat, karena ini hanya masalah menyalin file. Pemulihan juga cepat, untuk alasan yang sama Namun, cadangan fisik memiliki dua kelemahan penting
Pembuatan cadangan MySQL Server secara manual dengan menyalin file dataCara termudah untuk membuat cadangan adalah dengan menyalin konten direktori data MySQL Untuk membuat cadangan MySQL Server secara manual berdasarkan file, ikuti langkah-langkah di bawah ini
select @@datadir; Cara termudah untuk melakukannya adalah melalui MySQL Workbench
Membuat cadangan MySQL Server dengan menyalin file data menggunakan skrip batchSemua tindakan yang dijelaskan di bagian sebelumnya dapat dilakukan menggunakan satu skrip kumpulan Pertama, tetapkan nilai untuk nilai variabel mysql --user root --password mysql < all-databases.sql2, mysql --user root --password mysql < all-databases.sql3, mysql --user root --password mysql < all-databases.sql4lalu jalankan skrip. Ini akan menghentikan layanan, menyalin konten folder data ke subdirektori baru, dan kemudian memulai Layanan MySQL set mysql_data_dir=C:\ProgramData\MySQL\MySQL Server 8.0\Data set backup_dir=D:\Temp set mysql_service_name=MySQL80 NET STOP %mysql_service_name% set mysql_backup_folder=%backup_dir%\mysql-backup-%DATE:~-4%-%DATE:~4,2%-%DATE:~7,2%-%time::=.% mkdir %mysql_backup_folder% xcopy /e /k /h /i "%mysql_data_dir%" "%mysql_backup_folder%" NET START %mysql_service_name%_Pemulihan database dari file Ikuti langkah-langkah di bawah ini untuk memulihkan data Anda
Menggunakan utilitas mysqlbackupKerugian utama dari metode sebelumnya adalah kebutuhan untuk menghentikan MySQL Server. Dan meskipun penyalinan itu sendiri membutuhkan sedikit waktu, bahkan mematikan server dalam waktu singkat mungkin tidak dapat diterima Untuk server windows, Oracle Corporation telah mengembangkan produk cadangan MySQL Enterprise yang memungkinkan Anda membuat cadangan fisik panas Solusi ini menyertakan utilitas konsol – mysqlbackup, yang memungkinkan pembuatan cadangan fisik. Ini mudah digunakan seperti mysqldump Perintah berikut membuat file cadangan di direktori d. \Temp\EnterpriseBackup mysqlbackup --user=root --password --backup-image=backup.mbi \ --backup-dir=D:\Temp\EnterpriseBackup backup-to-image –backup-image – Nama file cadangan –backup-dir – Direktori tempat cadangan akan dibuat Untuk memulihkan data dari cadangan, Anda perlu melakukan langkah-langkah persiapan, yaitu menghentikan Layanan MySQL dan menghapus direktori data Server MySQL. Maka Anda perlu menggunakan utilitas yang sama untuk memulihkan data tetapi dengan parameter berbeda mysqlbackup --datadir=C:\ProgramData\MySQL\MySQL Server 8.0\Data\ --backup-image=backup.mbi --backup-dir=D:\Temp\EnterpriseBackup copy-back-and-apply-log –datadir – Direktori data Server MySQL –backup-image – Nama file cadangan –backup-dir – Direktori yang berisi file cadangan Utilitas mysqlbackup mendukung kompresi on-the-fly, cadangan parsial, cadangan inkremental, dan banyak fitur lainnya. Detail tersedia di sini Kelemahan utama dari solusi ini adalah kebutuhan untuk membeli MySQL Enterprise, yang mungkin mahal untuk usaha kecil dan menengah IntinyaIngatlah bahwa melindungi data Anda bukan hanya tentang membuat file cadangan. Penting untuk memastikan transfer file cadangan ke penyimpanan dan menghapus cadangan lama secara teratur untuk mencegah penyimpanan meluap Apakah Anda membuat skrip batch untuk pencadangan Server MySQL otomatis menggunakan mysql --user root --password mysql < all-databases.sql6 , atau menggunakan SqlBak\SQLBackupAndFTP, hal utama adalah jangan lupa bahwa Anda membuat cadangan sehingga Anda dapat memulihkannya nanti. Jadi uji skrip pemulihan Anda dari waktu ke waktu Mudah-mudahan, petunjuk ini akan membantu Anda menemukan prosedur pencadangan yang tepat yang paling sesuai dengan kebutuhan Anda Bagaimana cara menyimpan database SQL?Buka SQL Server Management Studio Express dan sambungkan ke server SQL Perluas Database Klik kanan database yang ingin Anda cadangkan, lalu pilih Tugas > Cadangkan. . Pada jendela Back Up Database, pastikan field Database berisi nama database yang ingin Anda backup Pilih Jenis Cadangan Bisakah kita menyimpan MySQL?Simpan Hasil MySQL ke File
. Kami cukup menambahkan kata INTO OUTFILE, diikuti dengan nama file, di akhir pernyataan SELECT. Sebagai contoh. PILIH id, first_name, last_name DARI pelanggan KE OUTFILE '/temp/myoutput. There's a built-in MySQL output to file feature as part of the SELECT statement. We simply add the words INTO OUTFILE, followed by a filename, to the end of the SELECT statement. For example: SELECT id, first_name, last_name FROM customer INTO OUTFILE '/temp/myoutput.
Di mana MySQL menyimpan database?Biasanya, MySQL akan menyimpan data di direktori default /var/lib/mysql .
Bagaimana cara berbagi database MySQL?Untuk menyalin database MySQL dari server ke 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 |