Làm thế nào để lên lịch sao lưu cơ sở dữ liệu bằng cách sử dụng Cron Job
Để sao lưu cơ sở dữ liệu WordPress của bạn, có rất nhiều plugin xung quanh có thể hoàn thành công việc. Một số người trong số họ chỉ sao lưu cơ sở dữ liệu của bạn trong khi những người khác sao lưu toàn bộ thư mục WP. Nếu bạn đã sử dụng WordPress đủ lâu, bạn sẽ nhận ra rằng các plugin này không đáng tin cậy. Họ sẽ làm việc một ngày và thất bại một ngày khác, vì hàng nghìn và một lý do. Có thể là chúng không tương thích với phiên bản WordPress mới mà bạn đã nâng cấp lên hoặc chúng xung đột với một plugin mới được kích hoạt. Như trong trường hợp của tôi, nó cũng có thể vì cơ sở dữ liệu của bạn đang trở nên quá lớn để họ xử lý.
Dù lý do, thay vì dựa vào các plugin, một lựa chọn tốt hơn là sử dụng một công việc cron trong máy chủ của bạn và lên lịch để sao lưu cơ sở dữ liệu của bạn hàng ngày.
Lưu ý : Có thể sử dụng lệnh sau để sao lưu bất kỳ cơ sở dữ liệu nào. Yêu cầu duy nhất là bạn đang sử dụng máy chủ Linux để lưu trữ các tệp của mình.
Đây là cách bạn làm điều đó:
1. Đăng nhập vào bảng điều khiển máy chủ lưu trữ web của bạn. Nếu bạn đang sử dụng cPanel, hãy tìm một biểu tượng Cron Job.
2. Bạn có thể đặt thời gian và tần suất để sao lưu cơ sở dữ liệu. Trong trường lệnh, sao chép và dán lệnh sau:
mysqldump --opt -Q -u dbusername --password = dbpassword dbname | gzip> /path-to-store-the-backup-file/db_backup.sql.gz
- Thay thế dbusername bằng người dùng cơ sở dữ liệu
- Thay thế dbpassword bằng mật khẩu người dùng cơ sở dữ liệu
- Thay thế dbname bằng cơ sở dữ liệu mà bạn đang sao lưu
- Thay thế tệp path-to-store-the-backup thành đường dẫn tệp trong máy chủ của bạn nơi bạn muốn lưu bản sao lưu
Lưu ý : Trong một số máy chủ, bạn có thể cần phải đặt một cặp trích dẫn đơn xung quanh dbpassword để nó hoạt động. Ví dụ:
mysqldump --opt -Q -u dbusername --password = 'dbpassword' dbname | gzip> /path-to-store-the-backup-file/db_backup.sql.gz
Gửi email cho chính bạn cơ sở dữ liệu
Lưu trữ cơ sở dữ liệu trên máy chủ của bạn có thể chiếm nhiều không gian lưu trữ. Một cách bạn có thể làm là gửi email tệp sao lưu cho chính mình.
1. Tải xuống tập lệnh php này.
2. Giải nén tệp nén và mở tệp backup.php bằng trình soạn thảo văn bản.
3. Thay đổi chi tiết cơ sở dữ liệu:
$ dbhost = "localhost"; // thường localhost $ dbuser = "dbuser"; // nhập tên người dùng cơ sở dữ liệu của bạn ở đây $ dbpass = "dbpass"; // nhập mật khẩu cơ sở dữ liệu của bạn ở đây $ dbname = "dbname"; // nhập tên cơ sở dữ liệu của bạn ở đây $ sendto = "Send To"; // địa chỉ email để gửi cơ sở dữ liệu tới $ sendfrom = "Send From"; $ sendubject = "Sao lưu cơ sở dữ liệu hàng ngày"; // chủ đề của email $ bodyofemail = "Đây là bản sao lưu hàng ngày của cơ sở dữ liệu của tôi.";
4. Lưu tập tin. Tải toàn bộ thư mục lên máy chủ của bạn. Lưu ý : Thư mục bao gồm tệp .htaccess để ngăn mọi truy cập từ trình duyệt. Nếu bạn muốn truy cập từ trình duyệt, hãy xóa tệp .htaccess.
5. Trong phần cron job của cPanel, nhập vào lệnh sau:
php -q /path-to-the-php-script-folder/backup.php
Đó là nó.