Pada dasarnya, perintah mysqldump yang dapat Anda gunakan adalah:
mysqldump -u$user -p$pass -S $socket --all-databases > db_backup.sql
Itu akan mencakup database mysql, yang akan memiliki semua tabel pengguna/privs.
Ada kelemahan untuk menjalankan ini pada sistem produksi karena dapat menyebabkan penguncian. Jika meja Anda cukup kecil, itu mungkin tidak berdampak signifikan. Anda akan ingin mengujinya terlebih dahulu.
Namun, jika Anda menjalankan lingkungan InnoDB murni, Anda dapat menggunakan --single-transaction
flag yang akan membuat dump dalam satu transaksi (dapatkan) sehingga mencegah penguncian pada database. Perhatikan, ada kasus sudut di mana FLUSH TABLES
awal perintah yang dijalankan oleh dump dapat mengunci tabel. Jika demikian, matikan dump dan mulai ulang. Saya juga merekomendasikan bahwa jika Anda menggunakan ini untuk tujuan pencadangan, gunakan --master-data
tandai juga untuk mendapatkan koordinat log biner dari tempat dump diambil. Dengan begitu, jika Anda perlu memulihkan, Anda dapat mengimpor file dump dan kemudian menggunakan mysqlbinlog
perintah untuk memutar ulang file log biner dari posisi tempat dump ini diambil.