Trong WordPress, prefix của bảng database (tiền tố của bảng) là một thành phần quan trọng trong cấu trúc database. Mặc định, WordPress sử dụng tiền tố wp_
cho tất cả các bảng trong database. Tuy nhiên, việc thay đổi prefix này có thể tăng cường bảo mật cho website của bạn, giúp ngăn chặn một số hình thức tấn công phổ biến như SQL Injection. Dưới đây là hướng dẫn chi tiết cách thay đổi prefix database trong WordPress.
Bước 1: Sao lưu toàn bộ website và database
Trước khi thực hiện bất kỳ thay đổi nào trong database, bạn cần phải sao lưu toàn bộ website và database của mình. Đây là bước quan trọng để đảm bảo rằng nếu có bất kỳ lỗi nào xảy ra trong quá trình thay đổi, bạn có thể khôi phục lại dữ liệu ban đầu.
Sao lưu database: Bạn có thể sử dụng phpMyAdmin hoặc các plugin sao lưu như UpdraftPlus để sao lưu database.
Sao lưu file website: Sử dụng FTP hoặc trình quản lý file của cPanel để tải toàn bộ file của website về máy tính của bạn.
Bước 2: Thay đổi prefix trong file wp-config.php
Mở file wp-config.php
nằm trong thư mục gốc của WordPress bằng trình chỉnh sửa văn bản như Notepad++ hoặc Sublime Text.
Tìm dòng sau:
$table_prefix = 'wp_';
Thay đổi wp_
thành prefix mới mà bạn muốn sử dụng. Ví dụ:
$table_prefix = 'newprefix_';
Lưu ý: Prefix mới cần phải kết thúc bằng dấu gạch dưới _
để đảm bảo tính nhất quán.
Bước 3: Đổi tên các bảng trong database
Sau khi thay đổi prefix trong file wp-config.php
, bạn cần đổi tên tất cả các bảng trong database để khớp với prefix mới.
Mở phpMyAdmin: Truy cập vào phpMyAdmin qua cPanel hoặc bằng URL trực tiếp.
Chọn database của bạn: Trong danh sách bên trái, chọn database mà WordPress của bạn đang sử dụng.
Đổi tên bảng:
Bạn cần đổi tên tất cả các bảng bắt đầu bằng wp_
sang prefix mới. Ví dụ: đổi wp_posts
thành newprefix_posts
.
Bạn có thể thực hiện thủ công từng bảng bằng cách nhấp vào nút “Rename” (Đổi tên) hoặc sử dụng truy vấn SQL để thực hiện nhanh chóng:
RENAME table `wp_commentmeta` TO `newprefix_commentmeta`;
RENAME table `wp_comments` TO `newprefix_comments`;
RENAME table `wp_links` TO `newprefix_links`;
RENAME table `wp_options` TO `newprefix_options`;
RENAME table `wp_postmeta` TO `newprefix_postmeta`;
RENAME table `wp_posts` TO `newprefix_posts`;
RENAME table `wp_terms` TO `newprefix_terms`;
RENAME table `wp_termmeta` TO `newprefix_termmeta`;
RENAME table `wp_term_relationships` TO `newprefix_term_relationships`;
RENAME table `wp_term_taxonomy` TO `newprefix_term_taxonomy`;
RENAME table `wp_usermeta` TO `newprefix_usermeta`;
RENAME table `wp_users` TO `newprefix_users`;
Bước 4: Cập nhật các mục cần thiết trong bảng wp_options
và wp_usermeta
Sau khi đổi tên các bảng, bạn cần cập nhật prefix trong một số bảng đặc biệt là wp_options
và wp_usermeta
.
Cập nhật trong bảng wp_options
:
Chạy truy vấn SQL sau để tìm và thay đổi các giá trị có prefix cũ:
SELECT * FROM `newprefix_options` WHERE `option_name` LIKE '%wp_%'
Sau đó, bạn có thể thay đổi thủ công hoặc chạy các truy vấn cập nhật để thay đổi giá trị.
Cập nhật trong bảng wp_usermeta
:
Chạy truy vấn SQL để tìm các giá trị cần cập nhật:
SELECT * FROM `newprefix_usermeta` WHERE `meta_key` LIKE '%wp_%'
Tương tự như bảng wp_options
, bạn có thể cập nhật thủ công hoặc sử dụng truy vấn SQL.
Bước 5: Kiểm tra và đảm bảo mọi thứ hoạt động bình thường
Sau khi hoàn thành các bước trên, hãy kiểm tra lại website của bạn để đảm bảo mọi thứ hoạt động bình thường. Đăng nhập vào WordPress, kiểm tra các chức năng cơ bản như đăng bài viết, tải trang và kiểm tra console của trình duyệt để xem có lỗi nào xuất hiện không.
Kết luận
Thay đổi prefix của database là một trong những bước đơn giản nhưng hiệu quả để tăng cường bảo mật cho website WordPress của bạn. Tuy nhiên, đây là một thao tác nhạy cảm, vì vậy hãy đảm bảo bạn đã sao lưu đầy đủ và cẩn thận làm theo từng bước trong hướng dẫn này. Nếu bạn không tự tin, hãy xem xét việc thuê một chuyên gia để thực hiện thay đổi này.
Kết nối với web designer Lê Thành Nam