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.

Sao lưu và backup dữ liệu website
Sao lưu và backup dữ liệu website

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.

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 cPanel, tìm đến mục File >> chọn Backup Wizard

Backup website bằng cPanel
Backup website bằng cPanel

Bước 2: Nhấn vào mục Backup để bắt đầu tiến hành

Nhấn backup website
Nhấn backup website

Bước 3: Chọn Fullbackup để có bản backup đầy đủ nhất: Bao gồm source code, Database (sql) và file email

Full Backup cPanel
Full Backup cPanel

Bước 4: Nhấn vào Generate Backup để cPanel tiền hành backup cho bạn.

Generate Backup
Generate Backup

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.

Mở mục File Manager
Mở mục File Manager

Bước 02: Mở thư mục public_html

Chọn thư mục public_htm
Chọn thư mục public_htm

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.

Nén tất cả tập tin trong public_html
Nén tất cả tập tin trong public_html

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

Đặt tên cho file backup
Đặt tên cho file backup

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.

Tải về file backup website
Tải về file backup website

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.

Truy cập phpMyAdmin trong cPanel
Truy cập phpMyAdmin trong cPanel

Bước 02: Chọn vào database cần backup.

Chọn vào Database cần backup
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.

Nhấn vào xuất Database
Nhấn vào xuất Database

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.

Chọn phương thức xuất Database
Chọn phương thức xuất Database

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.

Lưu file backup trong một folder
Lưu file backup trong một folder

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.

Xóa toàn bộ website WordPress
Xóa toàn bộ website WordPress

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

  1. Chọn mục MySQL® Databases như hình bên dưới.
  2. 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.
Chọn vào MySQL Database
Chọn vào MySQL Database
Xóa Database của website
Xóa Database của website

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.

Xóa User của website WordPress
Xóa User của website WordPress

Như vậy là bạn đã hoàn thành xóa thành công database, userwebsite 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.

Upload file backup lên hosting
Upload file backup lên hosting

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.

Giải nén file backup website
Giải nén file backup website

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.

Tạo Database mới cho website
Tạo Database mới cho website

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.

Tạo mới User cho website
Tạo mới User cho website

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.

Thêm User vào Database mới
Thêm User vào Database mới

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.

Chọn quyền cho User với Database
Chọn quyền cho User với Database

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.

Chọn Database vừa tạo
Chọn Database vừa tạo

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.

Nhập file Database đã tải về
Nhập file Database đã tải về

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.

Nhập thành công Database
Nhập thành công Database

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.

Chọn bản wp_options
Chọn bản wp_options

Bước 02: Bây giờ bạn tiến hành sửa lại URL ở 02 mục siteurlhome 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.

Sửa thành URL website của bạn
Sửa thành URL website của bạ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.

Mở file wp-config.php trong chế độ chỉnh sửa
Mở file wp-config.php trong chế độ chỉnh sửa

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.
Cấu hình lại User và Database
Cấu hình lại User và Database

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)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.