Nhập database / cơ sở dữ liệu WordPress vào hosting mới bằng SSH

Tôi giả sử là bạn đã biết cách xuất database bằng SSH, và di chuyển nó từ hosting cũ về hosting mới.

Vì cơ sở dữ liệu thường không lớn bạn hoàn toàn có thể dùng FTP để tải nó về rồi sau đó up lên lại mà không mất quá nhiều thời gian. Tuy nhiên nếu đã biết dùng SSH, chắc bạn cũng sẽ muốn chuyển file giữa 2 server khác nhau bằng SSH luôn cho tiện (tương tự như cách chuyển file nén .zip).

scp -r root@123.123.345.345:/home/websitecu/database.sql /home/websitemoi.com/

Bây giờ đến phần chính, khi đã có file database, câu lệnh để bạn nhập cơ sở dữ liệu vào hosting mới là:

mysql -u usr -p dbn < database.sql

Trong đó:

  • database.sql nằm trong thư mục gốc trên hosting mới;
  • usr là user name của bảng database trên hosting mới;
  • dbn là tên bảng database trên hosting mới.

Nếu nhập đúng thông tin nó sẽ hỏi bạn password của database, bạn nhập vào nhấn enter là hoàn tất quá trình nhập database trên hosting mới.

Bạn có thể thấy lệnh nhập database đơn giản hơn lệnh xuất nhiều.

Ngay từ đầu làm sao tôi tạo được nơi chứa database? Tôi tạo nó qua control panel, ví dụ với CyberPanel tôi làm như sau: Databases > Create Database > Select Website > Chọn website tương ứng > Nhập tên user, tên bảng và pass vào. Nhấn save là bạn đã có database tương ứng với hosting mới.

Tuy nhiên ngay cả khi giải nén toàn bộ website & nhập database trên hosting mới, khi truy cập trang bạn sẽ thấy lỗi kết nối. Nguyên nhân là vì file wp-config.php trên hosting mới vẫn sử dụng thông tin cũ tương ứng với host cũ. Để kiểm tra bạn gõ lệnh sau:

cat wp-config.php

Dù SSH có thể chỉnh sửa được file, tôi thấy chỉnh bằng FTP tiện hơn, bạn dùng nó để truy cập vào file rồi tìm & chỉnh các dòng này theo thông tin từ hosting mới:

/** The name of the database for WordPress */
define( 'DB_NAME', 'dbn_cua_ban' );

/** MySQL database username */
define( 'DB_USER', 'usr_cua-ban' );

/** MySQL database password */
define( 'DB_PASSWORD', 'pa_cua_ban' );

Nhấn save là bạn đã kết nối thành công với database. Tải lại website lần nữa bạn sẽ thấy website hiện ra thay vì bị lỗi kết nối.

Nhập database là bước tối quan trọng khi bạn muốn chuyển host cho web WordPress bằng SSH.