Chuyển công nghệ lưu trữ database từ MyISAM sang InnoDB

Mục lục

  • Một số ưu điểm vượt trội của InnoDB
  • Chuyển từ MyISAM sang InnoDB trong phpMyAdmin

Hướng dẫn chuyển công nghệ lưu trữ database từ MyISAM sang InnoDB trong phpMyAdmin.

chuyen-cong-nghe-luu-tru-database-tu-myisam-sang-innodbchuyen-cong-nghe-luu-tru-database-tu-myisam-sang-innodb

Nếu bạn chưa biết thì MyISAM và InnoDB là 2 công nghệ lưu trữ (storage engine) dữ liệu database được sử dụng phổ biến nhất hiện nay. MyISAM xuất hiện sớm hơn InnoDB, do đó, nó cũng được sử dụng rộng rãi hơn. Hầu hết các website WordPress hiện nay, dù chạy trên MySQL hay MariaDB, đều đang mặc định sử dụng MyISAM làm công nghệ lưu trữ. Tuy nhiên, InnoDB thực sự vượt trội MyISAM ở nhiều khía cạnh. Do đó, chúng tôi khuyên bạn nên chuyển qua sử dụng InnoDB thay cho MyISAM ngay khi có điều kiện.

Tham khảo thêm:

  • Hướng dẫn khắc phục lỗi database WordPress với phpMyAdmin
  • Hướng dẫn backup WordPress không cần dùng plugin
Một số ưu điểm vượt trội của InnoDB

Nếu bạn quan tâm đến những lợi thế về mặt kỹ thuật của InnoDB thì:

  • InnoDB hỗ trợ khóa cấp hàng (row-level locking) trong khi MyISAM chỉ có khóa cấp bảng (table-level locking) đầy đủ. Với MyISAM, khi có hành động thực hiện (thêm/ sửa/ xóa) 1 record nào đó trong table thì table đó sẽ bị khóa lại, chờ tới khi hành động này được thực hiện xong thì hành động kia mới tiếp tục được thực hiện (có thể đọc đồng thời nhưng không thể ghi đồng thời).
  • InnoDB hỗ trợ tính toàn vẹn tham chiếu và hỗ trợ đầy đủ các khóa ngoài (RDBMS) trong khi MyISAM thì không (DBMS).
  • InnoDB có hỗ trợ giao dịch cho phép bạn thực hiện thay đổi, cam kết những thay đổi và khôi phục những thay đổi khi cần. MyISAM không có điều đó.
  • InnoDB sử dụng nhật ký giao dịch để phục hồi trong khi MyISAM thì không. Điều này làm cho InnoDB đáng tin cậy và an toàn hơn MyISAM.

MyISAM có cấu trúc đơn giản nên tốc độ đọc và truy xuất dữ liệu rất nhanh, có thể xem là nhanh nhất trong các loại storage engine. Tuy nhiên, nó dễ bị lỗi hơn và sẽ gặp phải vấn đề khi website có dữ liệu thường xuyên thay đổi (yêu cầu nhiều tác vụ thêm/ ghi/ xóa record). InnoDB có khả năng ghi dữ liệu nhanh hơn.

Bỏ qua những thứ khó hiểu bên trên, điều dễ nhận thấy nhất kể từ khi tôi chuyển từ MyISAM sang InnoDB là tính năng “tối ưu database” của các plugin hỗ trợ dọn dẹp database WordPress dường như “mất tác dụng”. Chúng không thể tìm thấy bất cứ table nào cần tối ưu. Bởi vì, database lưu trữ với công nghệ InnoDB luôn luôn ở trạng thái tối ưu nhất. Vậy còn lý do gì để không chuyển từ MyISAM sang InnoDB?

Chuyển từ MyISAM sang InnoDB trong phpMyAdmin
Trước khi tiến hành, hãy backup dữ liệu database của bạn để đảm bảo an toàn, mặc dù việc chuyển đổi storage engine thường không gây ra lỗi.

1. Truy cập phpMyAdmin của hosting.

click-vao-muc-phpmyadmin-trong-cpanelclick-vao-muc-phpmyadmin-trong-cpanel

2. Trong giao diện phpMyAdmin, click chọn database tương ứng với website của bạn. Danh sách các table của database sẽ hiện ra ở bên phải. Hãy chú ý đến cột Type, đây chính là công nghệ lưu trữ mà các table đang sử dụng.

kiem-tra-cong-nghe-luu-tru-database-trong-phpmyadminkiem-tra-cong-nghe-luu-tru-database-trong-phpmyadmin

3. Click vào 1 table mà bạn muốn chuyển đổi công nghệ lưu trữ => click tiếp vào tab Operations.

click-vao-tab-operations-trong-phpmyadminclick-vao-tab-operations-trong-phpmyadmin

4. Trong cột Table options, hãy click vào mục Storage Engine và chọn InnoDB.

click-vao-muc-storage-engineclick-vao-muc-storage-engine

Click vào nút Go để xác nhận thay đổi.

5. Chờ trong giây lát cho quá trình chuyển đổi hoàn tất, bạn sẽ nhận được thông báo tương tự như thế này.

query-has-been-executed-successfullyquery-has-been-executed-successfully

6. Quay trở lại danh sách table, các bạn sẽ thấy Type của table đã được chuyển thành InnoDB.

chuyen-doi-storage-engine-thanh-congchuyen-doi-storage-engine-thanh-cong

Lặp lại các bước bên trên cho đến khi tất cả các table đều được chuyển hết thành InnoDB. Thật đơn giản phải không nào? Chúc các bạn thành công!

Website của bạn đang sử dụng công nghệ lưu trữ database nào? Theo bạn, có nên chuyển từ MyISAM sang InnoDB hay không? Hãy cho chúng tôi biết quan điểm và ý kiến của bạn trong khung bình luận bên dưới.

Nếu bạn thích bài viết này, hãy subscribe blog của tôi để thường xuyên cập nhật những bài viết hay nhất, mới nhất qua email nhé. Cảm ơn rất nhiều. :)

Chuyển công nghệ lưu trữ database từ MyISAM sang InnoDB
4.1 (9 votes)
Chia sẻ:
  • Nhấn vào chia sẻ trên Facebook (Opens in new window)
Bài viết liên quan
Nguồn: wpcanban.com