Trong quá trình Backup – Restore WordPress Website rất nhiều người dùng gặp các lỗi xuất phát từ việc không chuẩn bị mọi thứ đúng như yêu cầu của các plugins.

Việc nắm rõ Qui trình backup – restore WordPress cũng như các yêu cầu chung khi backup – restore sẽ giúp chúng ta thực hiện việc này dễ dàng và hiệu quả.

 

Bài hướng dẫn này là Phần 3 của Chapter Backup – Restore – Clone – Migrate WordPress của Khóa học Pro WordPress Master thuộc WP Academy – WPbanquyen.com!

Chapter: Backup – Restore – Clone – Migrate WordPress gồm các phần:

Backup – Restore WordPress: QUI TRÌNH VÀ LƯU Ý

Qui trình Backup - Restore WordPress và Lưu ý khi thực hiện

A. Qui trình Backup – Restore WordPress

Để hiểu về các bước thực hiện khi Backup – Restore Website dùng WordPress, chúng ta cần nắm được một Website WordPress đang hoạt động gồm những thành phần nào?

Về cơ bản, khi bạn hoàn thành cài đặt WordPress thì Website sẽ gồm các thành phần sau:

  1. WordPress Core: chứa tất cả các thư mục và tập tin của bản WordPress gốc tải về từ WordPress.Org hầu như các files không thay đổi so với bản gốc tải về từ WordPress.org trong quá trình site hoạt động. Nếu có thì thường là do viruses chèn code hay file chứa mã độc vào. (phần thay đổi là file cấu hình wp-config.php & thư mục wp-content)
  2. File cấu hình riêng cho mỗi site wp-config.php và file cấu hình của hosting .htaccess (nếu dùng shared hosting – file .htaccess thường bị ẩn).
  3. Các files của dịch vụ ngoài nằm trên thư mục chứa code (thường là public_html hay ten_mien.com…): ví dụ bạn kết nối các dịch vụ như Yandex Domain Mail hay Google Analytics… thì họ sẽ cần thêm các file này vào để xác thực.
  4. Thư mục wp-content, chứa Themes (Themes), Plugins (Plugins) và media (Uploads) và các files phát sinh do Plugins tạo ra hay người dùng thêm vào (như Languages).
  5. Database MySQL: cơ sở dữ liệu của toàn bộ Website.

Vậy với mỗi Website WordPress, khi cần backup – clone hay migrate ta cần những phần: toàn bộ thư mục wp-content (3) + các files xác thực của dịch vụ ngoài nếu có (2) + file chứa database .sql (4) và wp-config.php (1).

Riêng file .htacces (1) chúng ta có thể không cần backup mà chỉ cần cấu hình lại Hosting cho phù hợp là được.

Backup WordPress

Vậy qui trình Backup và Restore sẽ bao gồm sao lưu và phục hồi các phần tương ứng:

  1. Backup Database: nếu làm thủ công thì vào phpMyAdmin, chọn database của Website rồi dùng tính năng Export để xuất toàn bộ ra file .sql để tải về.
  2. Backup thư mục wp-content: nén lại thành file .zip rồi tải về.
  3. Backup các file của dịch vụ ngoài: chọn tất cả, nén lại thành .zip để tải về.
  4. Cẩn thận hơn thì ta tải file wp-config.php về luôn.

Trong bài hướng dẫn Backup & Restore – Clone – Migration thủ công, chúng ta sẽ hiểu kỹ hơn về 4 cái này.

Như UpdraftPlus và dịch vụ VaultPress, chúng tự động backup 4 mục nói trên, và cho phép người dùng chọn thêm các file hay folder khác nếu muốn.

Một số plugins chuyên về Clone – Migration như AllinOne WP Migration hay Duplicator thì backup toàn bộ Code của Website (cả WordPress Core và .htaccess) + Database.

B. Chuẩn bị trước khi Backup & Restore

Người dùng ít kinh nghiệm thường gặp rất nhiều vấn đề khi tiến hành Backup & Restore: có thể là quá trình bị lỗi giữa chừng hay website sau khi restore bị lỗi giao diện, mất tính năng.

Hầu hết các vấn đề xuất phát từ việc chưa đọc hết các hướng dẫn của plugins (thường khá dài). Bạn cần lưu ý các vấn đề sau trước khi cài đặt Backup – hay Restore Website:

1. Dung lượng của Hosting phải đủ để chứa bản Backup của Website

Dù được lưu trữ trên Cloud Drive hay ở dịch vụ lưu trữ khác thì quá trình Backup và Restore, bản lưu trữ vẫn phải chứa tạm trên Hosting để up lên Cloud Drive hay Giải nén ra để Restore Website.

Trước khi backup hay restore, chúng ta cần xem dung lượng bản backup là bao nhiêu, và xem dung lượng ổ còn trống trên Hosting có đủ không (xem trên cPanel).

Thông tin Dung lượng cPanel

Dung lượng trống khi Backup

Nếu dung lượng Website là 1GB, thì dung lượng trống Hosting phải hơn 1GB để chứa bản backup.

Dung lượng trống khi Import bản Backup

Để Import một bản backup lên site mới – thì phải cần dung lượng trống hosting như sau:

  1. Dung lượng để chứa bản backup
  2. Dung lượng để bung nén bản backup

Như vậy, nếu bạn cần import (clone/ migration) một Website nặng 1GB – Thì Hosting của bạn phải có dung lượng trên 2GB mới đạt yêu cầu!

Thủ thuật WP

Nếu dung lượng size quá lớn nguyên nhân chính là do thư mục uploads (wp-content/uploads), nơi chứa hình ảnh và các tập tin khác (zip, pdf…) trong quá trình sử dụng chúng ta tải lên Media Library.

  1. Để giảm dung lượng file backup và restore, chúng ta có thể nén folder uploads rồi tải về, sau đó Xóa folders này (và cả bản nén uploads.zip) để giảm dung lượng size (thường chỉ còn vài trăm MB).
  2. Sau khi restore, chúng ta upload file uploads.zip và giải nén vào wp-content trên hosting mới.
  3. Sau khi giải nén, hãy vào Dashboard, trong Settings -> Permalinks nhấp Save changes để cập nhật các đường dẫn (nếu không bạn sẽ không thấy Images trên site mới).
Tai-folder-uploads-ve-rieng-khi-backup
Nén rồi tải uploads folder về để giảm dung lượng file backup.

Đa số các dịch vụ Hosting uy tín đều có thể tăng thêm cho bạn dung lượng lưu trữ trong 12h -> 24h. Nên nếu hosting còn quá ít dung lượng trống, hãy liên hệ support để họ giúp bạn.

2. Các thông số PHP Version & PHP Option Limits phải phù hợp

Chọn PHP version và bật tắt Extension & tùy chỉnh các Options.
Chọn PHP version và bật tắt Extension & tùy chỉnh các Options.

Việc thay đổi PHP version và các thông số giới hạn PHP Options (trên VPS hay cPanel) , cũng như bật tắt các Extension phải cẩn thận vì có thể khiến Website khi restore hoạt động không đúng như khi tiến hành backup.

Sau đây là các thông số khuyên dùng (đáp ứng hầu hết các plugins nặng nhất hiện nay). Một số hosting không cho phép bạn tăng quá cao các mục memory_limit, post_max_sizeupload_max_filesize thì bạn cứ để thông số cao nhất họ cho phép.

Các thông số PHP tối ưu nhất hiện nay
Các thông số PHP tối ưu nhất hiện nay

Thường khi Restore thì các plugins sẽ làm việc tốt nhất nếu phiên bản PHP và các Extension giống như lúc Backup.

Khi bạn thay đổi PHP Version (ví dụ từ 5.6 lên 7.2) hay các giá trị limits trong PHP Options thì cần ghi nhớ để nhỡ khi Restore Website không hoạt động tốt thì chỉnh lại như cũ.

PHP 7.2 đang là phiên bản mạnh nhất nên sẽ giúp quá trình Backup – Restore mượt mà hơn.

PHP 7.2 hiện tại là phiên bản cho hiệu năng cao nhất
PHP 7.2 hiện tại là phiên bản cho hiệu năng cao nhất

3. Tắt OPcache khi Restore Website

OPcache là một extension của PHP cho phép lưu (caching) kết quả của các lệnh PHP vào bộ nhớ đệm, việc này giúp giảm tải quá trình thực hiện các lệnh PHP trùng lặp, nhờ đó tăng tốc độ load và giảm tải cho máy chủ đáng kể.

Đáng tiếc là OPcache thường gây vấn đê khi tiến hành Restore Website – có thể là do dữ liệu đệm giữa thời điểm backup & restore xung đột nhau.

Nên chúng ta cần tắt extension này trước khi tiến hành restore Website.

Để tắt Extension OPcache, bạn vào cPanel, phần PHP version/ extension bỏ chọn và Save changes là xong.

Tat Opcache khi restore

Riêng nếu dùng VPS (Linux – Nginx) thì bạn không cần tắt OPcache mà chỉ cần tìm file trong đường dẫn:

/etc/php.d/opcache-default.blacklist

Và khai báo các plugins backup để nó loại trừ. Thêm các dòng sau vào file opcache-default.blacklist rồi Save lại.

/home/*/public_html/wp-content/plugins/backwpup/*
/home/*/public_html/wp-content/plugins/duplicator/*
/home/*/public_html/wp-content/plugins/updraftplus/*

(Lưu ý nếu không có file opcache-default.blacklist thì khả năng VPS chưa cài OPcache, nên không cần làm gì nữa).

4. Backup dự phòng ngay trước khi Restore

Khi Website gặp vấn đề và không sửa được hoặc việc sử lại quá khó khăn, mất thời gian thì chúng ta thường chọn Restore lại phiên bản gần nhất đã Backup.

Tuy nhiên, đôi khi việc restore bị lỗi  hoặc Website khi restore hoạt động không tốt và phiên bản Website hiện tại cũng mất luôn (do bị bản backup ghi đè lên trong quá trình restore). Lúc này có thể ta sẽ cần mọi thứ trở lại như trước khi Restore.

Do vậy, ngay trước thời điểm Restore Website, chúng ta nên tiến hành backup:

  1. Backup Website, để an toàn ta sẽ backup Website bằng vài plugins khác nhau (ví dụ UpdraftPlus – AllionOne WP Migration, Duplicator).
  2. Cùng với đó là backup Website thủ công (vào PHP MyAdmin để Export database và tải về) + nén rồi toàn bộ code WordPress về.
  3. Backup Hosting (vào cPanel, mục Backup).
  4. Backup VPS (nếu có hỗ trợ backup tự động hoặc ta nén và tải toàn bộ code về + backup database)

Càng cẩn thận thì khi có sự cố ta càng dễ thở. Rất nhiều trường hợp chỉ vì một chút chủ quan mà mất rất nhiều thời gian để khắc phục, có khi mất luôn cả code và dữ liệu.

Chúc thành công!

17279

Khóa học Pro WordPress Web Design 2022

Bạn có thể tự xây dựng Website chuẩn SEO chuyên nghiệp với tài nguyên WP bản quyền trị giá $1000

(*) Vui lòng kiểm tra email để xác thực hoàn tất đăng ký. Nếu không thấy email bạn nên kiểm tra tab Quảng cáo và Spam và kéo email vào tab Chính (Primary) nhé!

4 COMMENTS

  1. Chào bạn mình có vấn đề về làm website. Mong bạn bớt chút thời gian trợ giúp mình với. Vì mình có ” Làm hiệu ứng bóng cho Logo – có tìm được code trên mạng. Và mình đã chỉnh sửa ở file Style.css. Nhưng bị lỗi theme . Sau đó mình có upload lại file css gốc . Nhưng vẫn không được. mình có xoá hết wordpress và cài lại . nhưng vẫn xuất hiện lỗi đó khi cài theme cũ . theme khác thì được. mình cũng không biết lỗi do đâu nữa. dù đã xoá cache, cookie rồi. Mong bạn giúp đỡ ạ. Cám ơn bạn nhiều .

    • Mình đoán vấn đề nằm ở cache còn lưu trên trình duyệt của bạn hoặc cache còn giữ ở hosting (nếu bạn dùng plugin cache trước đó)
      Bạn thử xóa cache trình duyệt (Ctrl+Shilf+Delete) rồi vào lại xem nhé!

  2. À, mình hay dùng All in One WP Migration nên có thấy cái này nữa, là đợt gần đây thấy dung lượng web tăng chóng mặt. Thì ra là bố All in One WP Migration lưu file backup trên host khi mình dùng bản miễn phí 500mb để load file về máy. AE vào xóa đi là OK ạ

LEAVE A REPLY

Please enter your comment!
Please enter your name here