Thực tiễn tốt nhất để sao lưu máy chủ MySQL:
Bản sao MySQL
Thiết lập sao chép trong MySQL. Bạn sẽ phải thiết lập máy chủ Master và Slave. Tất cả đọc-ghi vào DB có thể đi đến Máy chủ nô lệ của bạn. Ưu điểm của việc nhân rộng là bạn có thể sao lưu từ máy chủ nô lệ của mình mà không làm gián đoạn máy chủ Master, ứng dụng của bạn sẽ tiếp tục hoạt động trên Master mà không có thời gian chết.
Sử dụng kết xuất MySQL
Nếu tập dữ liệu của bạn nhỏ (tôi nhận ra "nhỏ" là một thuật ngữ tương đối .. để đủ điều kiện, giả sử <10GB), thì mysqldump có thể sẽ hoạt động tốt. Thật dễ dàng, nó trực tuyến và nó rất linh hoạt. Chỉ cần một vài điều mysqldump có thể làm: sao lưu mọi thứ hoặc chỉ sao lưu cơ sở dữ liệu hoặc bảng nhất định chỉ DDL tối ưu hóa kết xuất để khôi phục nhanh hơn làm cho tệp sql kết quả tương thích hơn với các RDBMS khác và nhiều thứ khác.
Tuy nhiên, các tùy chọn quan trọng nhất có liên quan đến tính nhất quán của bản sao lưu của bạn. Các tùy chọn yêu thích của tôi là: --single-giao dịch: tùy chọn này cung cấp một bản sao lưu nhất quán, nếu (và chỉ khi) các bảng đang sử dụng công cụ lưu trữ InnoDB. Nếu bạn có bất kỳ bảng MyISAM không chỉ đọc, thì không sử dụng tùy chọn này khi sao lưu chúng. --master-data = 2: tùy chọn này sẽ đảm bảo kết xuất của bạn nhất quán (bằng cách thực hiện khóa tất cả các bảng trừ khi bạn đã thêm tùy chọn - giao dịch đơn lẻ). Tùy chọn --master-data cũng ghi lại vị trí nhật ký nhị phân trong tệp kết quả kết quả (= 2 khiến dòng này là một nhận xét trong tệp kết xuất)
Lưu ý cuối cùng về mysqldump: hãy nhớ rằng thời gian khôi phục có thể lâu hơn đáng kể so với thời gian sao lưu. Nó sẽ phụ thuộc vào một số yếu tố, ví dụ, bạn có bao nhiêu chỉ mục.
Ảnh chụp nhanh LVM
Đối với những người có bộ dữ liệu lớn hơn, một bản sao lưu vật lý là cách để đi. Mặc dù bạn có thể thực hiện sao lưu lạnh (nghĩa là tắt dịch vụ MySQL, sao chép thư mục dữ liệu, khởi động lại dịch vụ), nhiều người không muốn thời gian chết. Giải pháp yêu thích của tôi là ảnh chụp nhanh. Điều này có thể nóng (đối với InnoDB) hoặc yêu cầu khóa ngắn (đối với MyISAM). Đừng quên bao gồm tất cả dữ liệu của bạn (bao gồm ib_logfiles). Lenz cung cấp một tiện ích tuyệt vời để trợ giúp việc này: http://www.lenzg.net/mylvmbackup/
Sử dụng sao lưu doanh nghiệp MySQL
Ưu điểm của việc sử dụng Sao lưu doanh nghiệp MySQL:
- Sao lưu "nóng" của các bảng InnoDB diễn ra hoàn toàn trực tuyến, không chặn Chỉ sao lưu các bảng hoặc không gian bảng cụ thể
- Chỉ sao lưu dữ liệu đã thay đổi kể từ lần sao lưu trước
- Sao lưu nén - Lưu dung lượng lưu trữ lên tới 90% và nhiều hơn nữa ..
Tham khảo:
http://www.mysql.com/products/enterprise/backup/features.html
http://www.mysql.com/products/enterprise/backup.html
--single-transaction
nhưng đừng quên thêm--events --routines
và tôi luôn sử dụng--triggers
, mặc dù nó được bật theo mặc định, vì nó có thể bị vô hiệu hóa trong my.cnf. Tôi có thể nói rằng việc sử dụng chúng như là một cách thực hành chuẩn cho dù bạn hiện có những loại đối tượng đó trong cơ sở dữ liệu của mình hay không.