Sao lưu và khôi phục website là cách giúp bạn quản lý dữ liệu và tránh trường hợp mất website. Trong bài viết này IMTA sẽ hướng dẫn bạn cách Backup (sao lưu) và Restore website WordPress bằng cPanel hosting.
Trọng tâm bài viết này sẽ hướng dẫn bạn Backup (sao lưu) và Restore (khôi phục) dữ liệu website WordPress bằng phương pháp thủ công. Tức là bạn có 2 file: 1 file source code (dạng .zip), và file 1 file database (dạng .sql).
1. Vì sao cần backup dữ liệu website?
Website dùng WordPress nói riêng và mọi website nói chung đều cần được backup dữ liệu. Mục đích của backup website là tạo ra một bản sao lưu của website để khôi phục hay nhân bản website với bản sao lưu khi cần thiết.
1.1 Sử dụng file backup để khôi phục dữ liệu website
Nhằm dự phòng khi xảy ra sự cố kỹ thuật nhưng không thể khắc phục. Khi đó bạn có thể khôi phục (restore) lại mọi thứ trên website từ cái file backup đã tạo. Và lúc này, website được quay trở lại với phiên bản mà bạn đã backup.
Những nguyên nhân thường gây ra sự số về kỹ thuật cần phải backup website:
- Lỗi kỹ thuật từ nhà cung cấp dịch vụ hosting: Vì một lý do nào đó máy chủ chứa website của bạn bị hỏng, toàn bộ dữ liệu trên máy chủ bị mất, trong đó bao gồm website của bạn.
- Website bị nhiễm virus, mã độc, bị hack: cái này rất thường gặp đối với website WordPress (dùng code không có bản quyền, các bản lậu). Khi đó website của bạn có thể bị chiếm quyền kiểm soát để thực hiện cho các mục đích xấu. Nhẹ hơn thì dữ liệu website bị phá hoại, trở thành một mớ hỗn độn.
- Vô tình làm hỏng: Điển hình là những bạn hay vọc vạch mã nguồn website như: chỉnh sửa, thêm bớt tính năng tạo ra lỗi không biết hoặc không thể khắc phục. Một trường hợp phổ biến khác, là khi nâng cấp mã nguồn, theme, pluginkhông tương thích với phiên bản hiển tại.
Khi bạn chạy quảng cáo Google Ads bạn có nhu cầu sao chép website ra nhiều domain khác nhau bởi vì đôi khi bạn bị banned website.
1.2 Sử dụng file backup để chuyển hosting
Khi muốn đổi hosting cho website, bạn cần file backup của website và tải lên hosting lưu trữ mới để hoạt động.
Ví dụ: trước đó bạn dùng hosting của nhà cung cấp A, nhưng sau khi dùng một thời gian, thấy không đảm bảo chất lượng. Vì thế bạn thuê một gói hosting của nhà cung cấp B. Và lúc này, bạn cần chuyển toàn bộ dữ liệu website sang hosting mới.
1.3 Sử dụng file backup để nhân bản website
Restore cũng là một phương pháp để bạn sao chép (nhân bản website) hoặc chuyển đồng thời website sang tên miền và hosting khác.
Những đơn vị thiết kế website WordPress sẽ thường dùng file backup với mục đích này. Họ sẽ tạo ra nhiều website mẫu và file backup tương ứng. Khi khách hàng chọn một mẫu bất kỳ, thì họ sẽ đưa file backup lên hosting của khách hàng với giao diện giống y hệt website mẫu đã chọn, không cần phải thiết kế, làm lại từ đầu. Giải pháp này cực kỳ tiết kiệm thời gian, tiền bạc và công sức.
- Khóa học SEO tại IMTA - Phương pháp SEO quy trình bài bản
- Khóa học quảng cáo Google Ads - Cơ bản đến chuyên sâu
- Khóa Học Digital Marketing - Chạy quảng cáo đa kênh kết hợp
2. Hướng dẫn backup Website WordPress bằng cPanel
2.1 Cách backup nhanh
Nếu bạn nào đang sử dụng hosting có trình quản lý cPanel thì bạn có thể backup nguyên 1 file bao gồm cả source code và database (sql) chỉ bằng vài click đơn giản.
Bước 1: Truy cập vào đơn vị bán hosting của bạn, sau đó tìm đến mục đăng nhập Cpanel
Tìm đến mục File >> chọn Backup Wizard
Bước 2: Nhấn vào mục Backup để bắt đầu tiến hành
Bước 3: Chọn Fullbackup để có bản backup đầy đủ nhất: Bao gồm source code, Database (sql) và file email
Bước 4: Nhấn vào Generate Backup để cPanel tiền hành backup cho bạn.
Sau khi đã tạo được backup bạn tải file về nhé. Trong file tìm mục source code là folder chứa website (website chính nằm ở publish_html, còn datase nằm trong folder sql).
2.2 Cách backup thủ công
Cách backup thủ công sẽ giúp bạn chủ động hơn trong việc lựa chọn những file dữ liệu backup. Để hoàn thành backup, bạn cần thực hiện 02 công đoạn. Đó là tạo file backup cơ sở dữ liệu website (database) và dữ liệu website (web data: mã nguồn, theme, plugin, file media,..).
Phần 1: Tạo file backup dữ liệu cấu hình website
Bước 01: Trong bảng điều kiển cPanel, bạn mở mục File Manager như hình bên dưới.
Bước 02: Mở thư mục public_html
Bước 03: Tick vào Select All để chọn tất cả các tập tin và thư mục có trong public_html, hoặc loại bỏ file không cần thiết (hãy đảm bảo rằng bạn hiểu chức năng của các file mà bạn muốn bỏ). Tiếp theo là nhấn chuộc phải >> chọn vào Compress.
Bước 04: Khi cửa sổ nén file được mở lên, tại mục Compression Type, bạn chọn định dạng file backup là Zip Archive. Cuộn chuột xuống dưới trong cửa sổ này, tại mục Enter the name of the compressed archive bạn sửa lại tên file backup là tên website của bạn cần backup. Ví dụ như hình bên dưới mình đặt tên file là imta-backup.zip
Sau khi đặt tên file xong thì nhấn vào Compress File(s) để thực hiện nén. Quá trình sẽ diễn ra nhanh hoặc chậm tùy thuộc vào website bạn có dung lượng lớn hay nhỏ.
Bước 05: Kết quả sau khi nén là được một file có tên là imta-backup.zip như hình bên dưới. Bạn nhấn chuột phải vào file nó >> chọn Download để tải file backup này về máy tính.
Thông thường file backup được tải về sẽ lưu trữ nó trong bộ nhớ máy tính của bạn. Hoặc bạn cũng có thể upload nó lên các dịch vụ lưu trữ khác như Google Drive, One Drive,…
Phần 2: Tạo file backup cơ sở dữ liệu website (database)
Bước 01: Trong bản điều khiển cPanel, bạn truy cập vào mục phpMyAdmin. Khi đó nó sẽ tự mở trang quản trị phpMyAdmin trong một tab trình duyệt mới.
Bước 02: Chọn vào database cần backup.
Bước 03: Nhấn vào nút Xuất (export) để mở công cụ xuất ra file database của website.
Bước 04: Tại mục chọn phương thức trích xuất database, bạn chọn kiểu Nhanh – chỉ hiển thị các tùy chọn tối thiểu. Sau đó nhấn nút Thực hiện.
Kết quả sau khi xuất file database bạn được một tập tin có đuôi .sql. Hãy chuyển file .sql này và file .zip trước đó vào cùng một thư mục.
Khuyến nghị: Nếu bạn thường xuyên tạo các bản backup cho website, thì tên cho thư mục này cần thể hiện được bản backup này của website nào? có sự kiện gì tại thời điểm backup?. Ví dụ đặt tên folder là Backup imta.vn – truoc khi cap nhat wordpress 5.6 chẳng hạn. Điều này tưởng chừng như đơn giản, nhưng trong trường hợp bạn có một danh sách dài các bản backup, thì sẽ không biết bản nào có thể đưa website trở lại đúng thời điểm mong muốn. Với cách đặt tên rõ ràng bạn sẽ chọn đúng bản backup mình cần.
3. Restore website WordPress từ bản backup
Để khôi phục thành công Website, bạn hãy thực hiện theo 3 phần mình hướng dẫn dưới đây:
Phần 1: Chuẩn bị trước khi (Restore) khôi phục website
Để thực hiện khôi phục Website với bản backup mong muốn, bạn cần xóa dữ liệu đang tồn tại trên hosting lưu trữ để backup dữ liệu mới.
Bước 1: Chọn tất cả các file có trong thư mục public_html. >> nhấn chuột phải và chọn Delete >> nhần tiếp vào Confirm để xóa các file này đi.
Lưu ý: Trong trường hợp website bị nhiễm virus, mã độc thì bạn không nên tự xóa mà hãy liên hệ kỹ thuật của hosting nhờ họ “định dạng” lại gói hosting mà bạn đang sử dụng. Việc này chỉ có kỹ thuật mới có thể làm sạch hosting đó hoàn toàn được. Và khi đó bạn cũng không cần tìm database và user cũ để xóa, vì hosting sau khi “định dạng” nó như mới, không có gì trong đó cả.
Bước 2: Xóa Database
- Chọn mục MySQL® Databases như hình bên dưới.
- Tại mục Current Databases, chọn Delete để xóa database của website. Tiếp theo, nó sẽ hỏi lại bạn có chắc chắn muốn xóa database này không, bạn nhấn vào nút Delete Databse để xác nhận nhé ! Sau đó nhấn Go back để quay lại.
Bước 3: Xóa User
Trong mục Current Users của tệp MySQL® Databases, bạn nhấn vào nút Delete để xóa tài khoản người dùng hiện tại của website tương tự như với Database ở trên.
Như vậy là bạn đã hoàn thành xóa thành công database, user và website data. Bây giờ có thể sẵn sàng đề Restore website rồi.
Phần 2: Upload file backup website
Để upload file backup website rất đơn giản.
Bước 1: Trong thư mục public_html, bạn chọn vào nút Upload file như hình bên dưới. Sau đó chọn file backup cấu trúc website (.zip) đã tải về trước đó. Kết quả được như hình bên dưới.
Bước 2: Giải nén tập tin backup này ra bằng cách nhấn chuột phải vào file đó >> chọn Extract. Như vậy là hoàn tất công đoạn upload file backup lên hosting.
Phần 3: Tạo user và database mới
Trong trang quản trị phpMyAdmin không cho phép chúng ta upload trực tiếp file database đã backup trước đó. Vì thế, bạn cần phải tạo database và user mới như khi cài đặt website WordPress.
Để tạo database mới, bạn mở phần MySQL® Databases trong bảng điều khiển cPanel. Tại mục Create New Database, bạn tạo một database mới cho website. Tên của database thì đặt đơn giản thôi, như hình bên dưới mình đặt tên là data2
. Tức tên database đầy đủ của mình là imtavn_data2
.
Kéo xuống dưới, tại mục Add New User, bạn đặt tên cho user mới là user2
, tức tên đầy đủ của nó sẽ tương tự như của mình là imtavn_user2
. Tiếp đến là đặt mật khẩu cho user và nhấn vào nút Create User để tạo.
Tiếp đến, trong mục Add User To Database, bạn nhấn vào nút Add để thêm user vào database đã tạo.
Sau đó nhấn vào ALL PRIVILEGES để chọn tất cả các quyền cho user mới có thể thực hiện với database >> nhấn Make Changes để xác nhận.
Phần 4: Import (nhập) file database backup
User và database vừa tạo ở phần trên vẫn chưa có dữ liệu. Phần này chúng ta sẽ Import dữ liệu cho chúng
Bước 01: Mở trang quản trị phpMyAdmin, chọn vào database mà bạn vừa tạo. Tiếp đó nhấn vào mục Nhập.
Bước 02: Nhấn vào Chọn tệp và tải lên file database backup (.sql) mà trước đó bạn đã tải về. Tiếp theo nhấn Thực hiện.
Nếu quá trình nhập thành công, không có lỗi lầm gì thì nó sẽ xuất hiện thông báo như hình bên dưới.
Phần 5: Đổi URL cho website
Trong trường hợp bạn sử dụng file backup của một website khác thì sẽ phát sinh vấn đề là website của bạn sẽ tự động chuyển về URL của website gốc. Do đó, bạn hãy thực hiện đổi lại URL website bằng các bước dưới đây:
Bước 01: Trong database website mà bạn vừa khôi phục, bạn tìm và mở bản wp-options lên.
Bước 02: Bây giờ bạn tiến hành sửa lại URL ở 02 mục siteurl và home như mình khoanh đỏ bên dưới. Thực hiện bằng cách nhấn vào nút Sửa >> đổi URL hiện tại thành URL của bạn >> Chọn nút Thực hiện để xác nhận.
Phần 6: Kết nối database với mã nguồn WordPress
Để kết nối database vừa import ở trên, bạn sẽ mở file wp-config.php trong thưc mục public_html trong chế độ chỉnh sửa (Edit) như hình bên dưới.
Sau khi file wp-config.php được mở ra, bạn tìm đến khu vực như mình khoanh đỏ bên dưới. Sửa lại tên user, database và mật khẩu mà bạn đã tạo lại ở trên. Sau đó nhấn vào Save Changes để lưu lại phần chỉnh sửa vừa thực hiện. Trong đó:
- DB_NAME: là tên database;
- DB_USER: là tên user;
- DB_PASSWORD: mật khẩu của user mà bạn vừa tạo mới ở trên.
Như vậy là hoàn tất, bây giờ bạn mở website của bạn lên thử được chưa nhé. Nếu thực hiện tuần tự đúng từng bước như mình hướng dẫn từ trên xuống dưới là bạn đã khôi phục (restore) website thành công. Website trở lại trạng thái ban đầu, giống như chưa từng có gì xảy ra, mặc dù trước đó đã bị xóa sạch dữ liệu hết rồi.
TỔNG KẾT
Như vậy là mình đã hướng dẫn xong cho bạn cách sao lưu (backup) và khôi phục (restore) website rồi đấy. Mặc dù việc thực hiện không khó, nhưng hãy làm thật chắc từng bước để không bị lỗi nhé ! Bạn hãy lưu ý các quy trình để backup là bạn phải có 2 file.
File đầu tiên chưa Source code của website, file này là các file sẽ chạy trên máy chủ (back end). Thường file này ở định dạng nén .zip hoặc .gz. Các file này gần như không thay đổi dữ liệu nếu bạn không thay đổi theme hay plugin.
File thứ là là file chứa cơ sở dữ liệu SQL. File này rất quan trọng đối với 1 website. Hầu hết các thay đổi nội dung trên website wordpress sẽ được thay đổi trên file SQL. Bạn hãy lưu ý sau khi đã restore rồi thì cần phải kết nối file source code và file sql nhé.
Nếu bạn dùng dịch vụ thiết kế website hoặc khi mua hosting thì trong hợp đồng hãy thỏa thuận phương thức backup dữ liệu, đây là 1 trong những yếu tố cũng khá quan trọng để tránh tình trạng website bị mất dữ liệu nhé.
Xin chào và hẹn gặp lại trong bài viết khác trên IMTA.
Cảm ơn bạn đã đọc bài viết!
Chúc bạn sức khỏe và thành công.
mình đã backup cơ sở dữ liệu và database, nhưng khi restore lại thì gặp lỗi website k hiển thị như ban đầu, có thể nhờ admin untraview xem giúp được k ạ
Em xem trong file config đã sửa lại thông tin database và user chưa nhé. Nếu website không hiển thị ban đầu có thể do lỗi ssl hoặc file .htaccess
bài viết rất hay, làm sáng tỏ khá nhiều ci tiết
Yeah, IMTA cảm ơn bạn!
Cho mình hỏi tất cả bài viết của website có được sao lưu ko ạ
Được sao lưu tất cả bạn nhé
Cho mình hỏi là mình đã làm theo tất cả các bước nhưng lúc chuyển dữ liệu vào web mới thì lúc load vẫn bị quay về web cũ trong khi mình đã đổi tên ở trong php rồi ạ
Bạn đăng nhập vào phpmyadmin => tìm đến wp-options. Sau đó đổi lại đường link mới bạn nhé. Nếu có bị lưu cache thì vào lại với giao diện mới.
Cho mình hỏi là sau khi tải file nén (imta-backup.zip) về rồi thì có nên xóa nó đi không?
Giữ lại file có làm chậm website ko ạ?
Chào bạn,
Nếu hosting bạn dung lượng đủ lớn thì bạn cứ để bạn nhé.
KHông ảnh hưởng tốc độ website
Tuy nhiên bạn nên xóa đi vì có thể người khác sẽ download được source code của bạn
Thân ái