Sao lưu dữ liệu là một phần không thể thiếu của quản trị viên Database. Do đó việc backup (sao lưu) MySQL database thường xuyên là cần thiết. Đa số các bạn thường dùng phpmyadmin để backup hoặc restore.
Bạn có thể đơn giản hóa bằng cách sử dụng lệnh trong terminal để backup và restore, theo hướng dẫn dưới đây:
Ghi chú chung trong các câu lệnh:
[uname] : user database [dbname] : Tên database [bk.sql] : Tên file backup sẽ được tạo ra [--opt] : Các tùy chọn thêm của lệnh
Tham gia kênh Telegram của AnonyViet 👉 Link 👈 |
1. Backup bằng lệnh trong Terminal (sao lưu)
Sử dụng cấu trúc như sau:
$ mysqldump --opt -u [uname] -p [dbname] > [bk.sql]
Ví dụ : Để backup database duyquangnet
$ mysqldump -u root -p duyquangnet > bk_duyquangnet.sql
Bạn cũng có thể tùy backup riêng cách table bằng cách chọn table cần backup theo lệnh dưới đây:
$ mysqldump -u root -p duyquangnet table_a table_b > bk_duyquangnet.sql
Back up MySQL Database tự động nén
Nếu database của bạn có dung lượng quá lớn, bạn có thể cho nó tự động nén lại để giảm dung lượng, ta có thể sử dụng cấu trúc lệnh nén cùng gzip
$ mysqldump -u [uname] -p [dbname] | gzip -9 > [bk_duyquangnet.sql.gz]
2. Restore MySQL Database (Phục hồi)
Câu lệnh dưới đây dùng để Restore (Phục hồi), sử dụng trong trường hợp Database của bạn có vấn đề hoặc bị lỗi, và bạn muốn khôi phục lại phiên bản trước đó.
Yêu cầu: Phải có File backup database (ở mục 1)
$ mysql -u [uname] -p [dbname] < [backupfile.sql]
Ví dụ: Phục hồi database duyquangnet
$ mysql -u root -p duyquangnet < bk_duyquangnet.sql
Phục hồi database đã được nén sẵn
gunzip < [backupfile.sql.gz] | mysql -u [uname] -p [dbname]
Nếu bạn có một database đã được tạo sẵn, thì sử dụng lệnh mysqlimport để phục hồi. Cấu trúc lệnh như sau:
mysqlimport -u [uname] -p [dbname] [bk.sql]
Cảm ơn bạn , rất có ích
Đi đâu cũng có bài của thánh =)
Thank ad nhé