Một lưu ý nhỏ khi restore CSDL WordPress với PhpMyAdmin

Thông thường người ta thường restore CSDL WordPress thông qua chức năng Import trong PhpMyAdmin. Tuy nhiên nếu ngay lúc đó bạn truy cập vào địa chỉ website mới http://new.com/blog, bạn sẽ bị redirect về địa chỉ cũ http://old.com/blog. Nguyên nhân ở đây là gì vậy?

Đó chính là do phần cấu hình của WordPress cũng được bảo lưu. Phần cấu hình này bao gồm địa chỉ mã nguồn WordPress (WordPress address) và địa chỉ trang chủ của website (Home address). Cả 2 địa chỉ này được thiết lập tự động khi bạn cài đặt WordPress, bạn có thể xem chúng thông qua mục Settings => General. Chúng được lưu trong CSDL của website, do đó khi bạn backup và restore lại thì chúng mặc nhiên được chuyển qua website mới. Vì vậy lúc bạn truy cập website mới, WordPress sẽ truy vấn CSDL để lấy ra 2 địa chỉ cũ này và theo đó redirect bạn đến nơi cũ.

Để khắc phục điều này, bạn phải sửa đổi 2 địa chỉ trên. Tuy nhiên bạn sẽ không thể làm theo cách thông thường là vào Dashboard => Settings => General vì bạn đâu có thể truy cập được địa chỉ mới! Vì thế, chúng ta hãy sử dụng PhpMyAdmin để làm công việc này:
  1. Vào PhpMyAdmin và chọn CSDL của bạn
  2. Chọn table wp_options. Ở đây tôi để mặc định tiền tố CSDL là wp_, của bạn có thể sẽ khác, bạn sửa lại cho phù hợp (nếu tiền tố của bạn là myblog_ thì hãy chọn table myblog_options).
  3. Hãy chọn chế độ browse bằng cách nhấn nút Browse ở bên trên
  4. Lúc này bạn sẽ thấy ngay ở dòng đầu tiên có 1 tham số siteurl, giá trị của nó là http://old.com/blog, đó chính là WordPress address tôi đã nói ở trên. Hãy click vào biểu tượng cây bút chì ở đầu dòng để sửa đổi nó thành http://new.com/blog.
  5. Lật tiếp sang trang 2, bạn sẽ tìm thấy 1 tham số home, giá trị của nó cũng là http://old.com/blog, đó chính là Home address của blog của bạn. Hãy sửa đổi nó thành http://new.com/blog 1 cách tương tự.
Như vậy đã xong, bây giờ bạn có thể truy cập website mới của mình rồi. Nhớ backup/restore các file (nhất là themes và plugins) trước khi thực hiện các thao tác với CSDL nhé.

6 nhận xét :

  1. Mình góp ý là khi hướng dẫn cái gì nên có hình ảnh nhé, bởi như vậy sẽ thuyết phục hơn :-)

    Trả lờiXóa
  2. Ừ, cám ơn Tỉnh nhé. Mình sẽ để ý và chăm chút bài viết hơn :).

    Trả lờiXóa
  3. Quá hay, không có nút vote nhẩy :D

    Trả lờiXóa
  4. Hi hi hay đấy, thảo nào ngày xưa lúc load database từ host trên mạng về --> localhost thì ko truy cập dc vào localhost nữa ^^
    Thanks nhá!

    Trả lờiXóa
  5. Các bạn có thể sử dụng:

    WP_HOME và WP_SITEURL trong file wp-config.php cách này có thể sử dụng để dùng 1 CSDL cho nhiều domain :)

    http://codex.wordpress.org/vi:wp-config.php#.C4.90.E1.BB.8Ba_ch.E1.BB.89_c.E1.BB.A7a_WordPress_.28URL.29

    Trả lờiXóa
  6. Cám ơn CARO rất nhiều :), cách sử dụng 1 CSDL cho nhiều domain hôm trước mình cũng mới đọc được ở blog của bạn, rất hay đấy :)

    Trả lờiXóa