Chủ yếu có hai cách để sao lưu cơ sở dữ liệu mysql của bạn:sao lưu lạnh (tĩnh / ngoại tuyến) và sao lưu nóng (động / trực tuyến).
1 Sử dụng tập lệnh crontab sao lưu db của bạn hàng ngày / tuần / tháng, v.v. Chúng tôi gọi đó là sao lưu lạnh. Tập lệnh có thể như thế này:
!#/bin/sh
mysqldump -usample_name -S/tmp/sample.sock --databases db1 db2 > db_backup_time.sql
bạn có thể tìm hướng dẫn sử dụng mysqldump tại đây . Trên thực tế, toàn bộ chp.6 đang nói về sao lưu và phục hồi cơ sở dữ liệu. Sau đó, bạn sẽ nhận được bản sao dữ liệu của mình (ví dụ:6 giờ sáng.) Mỗi ngày.
2 Sử dụng mysql các giải pháp sao chép (cấu trúc master-slave) để sao lưu trực tuyến. Tất cả các truy vấn trên chính dẫn đến sửa đổi dữ liệu cũng sẽ được thực hiện trên phụ.
so sánh:
Về cơ bản, sao lưu lạnh dễ dàng hơn. Nhưng khi điều tồi tệ xảy ra, phương pháp đầu tiên chỉ có thể khôi phục dữ liệu vào thời điểm bạn đổ máy nhân bản. Với sao lưu nóng và công cụ mysqldump, bạn có thể khôi phục dữ liệu bất cứ lúc nào.
Theo kinh nghiệm của tôi, chúng tôi luôn kết hợp hai phương pháp này với nhau:
- viết gương mỗi sáng và,
- xây dựng một nô lệ của db chính trên một máy vật lý khác.
điều đó sẽ an toàn.