Nội Dung Chính Trong Bài Viết

Công cụ lưu trữ InnoDB sẽ xuất hiện lỗi ‘Công cụ bảng không xác định‘ innodb ”nếu nó bị vô hiệu hóa hoặc do các cài đặt khác. Hôm nay chúng ta sẽ xem cách khắc phục nó.

Bạn đang xem : công cụ bảng không xác định innodb

InnoDB là công cụ lưu trữ cho MySQL. Do khả năng khôi phục sự cố nhanh chóng, InnoDB là công cụ được ưu tiên cho các cơ sở dữ liệu có sẵn cao.

Nhưng đôi khi InnoDB gây ra lỗi, chẳng hạn như ‘Công cụ bảng không xác định‘ innodb ”. Hôm nay, chúng ta sẽ xem khi nào và tại sao lỗi này xảy ra cũng như cách khắc phục.

Lỗi ‘Công cụ bảng không xác định‘ innodb ”là gì?

Bản thân thông báo lỗi rõ ràng cho biết rằng dịch vụ MySQL không thể phát hiện công cụ lưu trữ InnoDB.

Lỗi công cụ InnoDB tự biểu hiện trong các tình huống khác nhau:

1. Không thành công khi tạo bảng InnoDB

Giả sử bạn cố gắng tạo một bảng mới bằng lệnh (“CREATE TABLE t1 (a INT, b CHAR (20), PRIMARY KEY (a)) ENGINE = InnoDB;”).

Việc tạo bảng không thành công, dẫn đến lỗi – ERROR 1286 (42000) tại dòng 1: Công cụ bảng không xác định 'innodb'.

Tạo bảng hoặc danh sách bằng PhpMyAdmin cũng có thể không hoạt động. Nó thậm chí có thể không liệt kê tùy chọn công cụ lưu trữ InnoDB mà thay vào đó là lỗi này.

2. Sử dụng các lệnh MySQL liên quan đến InnoDB

Khi công cụ InnoDB bị tắt, việc sử dụng một số lệnh nhất định sẽ hiển thị lỗi này.

Ví dụ: liệt kê các công cụ lưu trữ bằng lệnh “show engine”, sao lưu cơ sở dữ liệu bằng mysqldump, v.v. là những tình huống mà bạn có thể gặp lỗi này:

mysqldump: Có lỗi: 1286: Công cụ bảng không xác định 'InnoDB' khi sử dụng BẢNG KHÓA

3. Máy chủ MySQL không thể khởi động

MySQL có thể không bắt đầu với sự hỗ trợ của công cụ InnoDB. Lỗi được hiển thị trong tệp nhật ký sẽ là:

 

[ERROR] Công cụ lưu trữ không xác định / không được hỗ trợ: InnoDB

4. Lỗi trong các trang web

Đột nhiên, tất cả các trang web dựa trên cơ sở dữ liệu của bạn có thể bắt đầu xuất hiện lỗi cùng với các truy vấn cơ sở dữ liệu:

 

Thông báo: Lỗi: Công cụ bảng không xác định 'InnoDB'

Lỗi Số: 1286

Nguyên nhân gây ra lỗi ‘Công cụ bảng không xác định‘ innodb ”

Lỗi công cụ bảng không xác định xảy ra do công cụ lưu trữ InnoDB không được bật trong máy chủ hoặc do công cụ này bị hỏng.

XEM THÊM  Làm thế nào để đặt trang web WordPress thành liên kết mở trong tab mới? - GretaThemes - mở trang wordpress trong tab mới

Các lý do chính gây ra lỗi là:

1. InnoDB không được bật

Nếu công cụ InnoDB bị tắt trong cấu hình máy chủ cơ sở dữ liệu MySQL, nó sẽ xuất hiện lỗi ‘Công cụ bảng không xác định‘ innodb ”bất cứ khi nào bạn cố gắng tạo bảng có hỗ trợ InnoDB.

Điều này có thể xảy ra nếu máy chủ MySQL không được biên dịch với hỗ trợ InnoDB hoặc nếu hỗ trợ InnoDB bị tắt thông qua cài đặt cấu hình.

Nếu máy chủ MySQL được tạo từ nguồn và InnoDB tích hợp không được biên dịch trong đó, công cụ InnoDB sẽ không được nhận dạng.

Bạn có thể kiểm tra xem InnoDB có được hỗ trợ trong máy chủ hay không bằng cách sử dụng lệnh MySQL:

Kiểm tra xem InnoDB có được bật trong máy chủ không

Giá trị ‘DISABLED’ cho thông số ‘have_innodb’ cho thấy rằng InnoDB không được bật trong máy chủ đó.

Công cụ InnoDB cũng có thể bị vô hiệu hóa do nâng cấp máy chủ MySQL, di chuyển máy chủ hoặc thay đổi cấu hình thủ công.

Nếu tham số ‘ignore-innodb’ không được chú thích trong /etc/my.cnf, nó sẽ bỏ qua quá trình tải công cụ cơ sở dữ liệu InnoDB.

2. Thiếu bộ nhớ

Máy chủ không có đủ bộ nhớ để cấp phát cho MySQL, có thể khiến InnoDB bị lỗi. Việc phân bổ bộ nhớ diễn ra dựa trên các tham số như ‘ innodb_buffer_pool_size '.

Nếu giá trị được phân bổ cho kích thước nhóm này lớn hơn giới hạn bộ nhớ khả dụng, thì lỗi InnoDB sẽ xảy ra.

3. Tệp nhật ký lớn hoặc bị hỏng

Về lâu dài, có thể xảy ra trường hợp tệp nhật ký InnoDB tăng kích thước lên đến khoảng GB hoặc chúng bị hỏng do một số lý do. Tệp nhật ký có sẵn tại ‘ ib_logfile’.

Các tệp nhật ký này chứa các thay đổi đối với dữ liệu InnoDB. Nếu chúng bị hỏng, InnoDB sẽ không tải được và dẫn đến lỗi ‘Công cụ bảng không xác định‘ innodb ”.

4. Quyền không chính xác cho / tmp hoặc tệp socket

Theo mặc định, máy chủ MySQL tạo tệp socket của nó trong / tmp hoặc thư mục tmp khác như được định cấu hình. Thư mục này yêu cầu 1777 quyền để dịch vụ hoạt động.

Nếu / tmp không có đủ quyền để tạo tệp socket, nó có thể hiển thị lỗi InnoDB. InnoDB cũng không chạy nếu thư mục này đầy và không còn dung lượng.

Cách sửa lỗi “Công cụ bảng không xác định” innodb “

Sau khi xác định lý do gây ra lỗi động cơ InnoDB từ nhật ký lỗi, chúng tôi có thể áp dụng bất kỳ bản sửa lỗi nào tại đây, tùy theo tình huống.

XEM THÊM  Ý kiến ​​trung thực của chúng tôi với ưu và nhược điểm - wordpress com có ​​tốt không

1. Bật InnoDB trong tệp cấu hình

Nếu hỗ trợ InnoDB bị tắt trong tệp cấu hình, đây là cách khắc phục.

Kiểm tra tệp ‘/etc/my.cnf’. Đây là tệp cấu hình cho máy chủ MySQL.

Tìm tham số ‘ ignore-innodb ' và nhận xét nó bằng cách thêm # vào đầu dòng:

Bật hỗ trợ InnoDB trong my.cnf

Khởi động lại máy chủ MySQL và bây giờ hỗ trợ InnoDB sẽ được bật và bạn có thể thực thi các lệnh mà không gặp lỗi.

Hỗ trợ công cụ InnoDB được bật trong máy chủ

2. Tạo lại tệp nhật ký InnoDB

InnoDB thường khôi phục các tệp nhật ký của nó khi dịch vụ MySQL được khởi động.

Vì vậy, nếu dịch vụ không khởi động do tệp nhật ký lớn hoặc bị hỏng, hãy đổi tên chúng và khởi động lại MySQL bằng các bước sau:

a. Dừng dịch vụ MySQL:

  /etc/init.d/mysql stop
 

b. Đổi tên tệp nhật ký thành một số tên khác

  mv / var / lib / mysql / ib_logfile0 /var/lib/mysql/ib_logfile0.bak

mv / var / lib / mysql / ib_logfile1 /var/lib/mysql/ib_logfile1.bak  

c. Khởi động dịch vụ MySQL:

  /etc/init.d/mysql start  

Bây giờ máy chủ MySQL sẽ khởi động tốt. Nó sẽ tạo các tệp nhật ký từ đầu và các bảng InnoDB sẽ có thể truy cập được mà không bị lỗi.

3. Chỉnh sửa cài đặt cấu hình

Chỉnh sửa các thông số sau trong ‘/etc/my.cnf’ và đặt các giá trị tối ưu dựa trên cài đặt máy chủ, chẳng hạn như bộ nhớ khả dụng và CPU.

  innodb_buffer_pool_size
innodb_additional_mem_pool_size
innodb_log_buffer_size
innodb_thread_concurrency
 

Đây là các tham số phân bổ bộ nhớ và CPU cho công cụ lưu trữ InnoDB. Không có giá trị mặc định cho các thông số này, nhưng các giá trị có thể thay đổi từ máy chủ này sang máy chủ khác.

Luôn xác minh quyền của thư mục ‘tmp’ và xác nhận rằng có đủ bộ nhớ và dung lượng đĩa cho máy chủ MySQL.

Tại Bobcares, chúng tôi cũng kiểm tra nhật ký máy chủ và theo dõi hiệu suất của MySQL cũng như tinh chỉnh các giá trị được đặt cho từng tham số.

4. Thiết lập máy chủ MySQL với hỗ trợ InnoDB

Tất cả các bản sửa lỗi ở trên đều có liên quan trên các máy chủ đã có công cụ InnoDB được biên dịch với nó. Các phiên bản MySQL 5.5 trở lên có công cụ InnoDB được bật theo mặc định.

Nếu máy chủ MySQL của bạn không có hỗ trợ InnoDB được biên dịch, bạn cần phải biên dịch lại nó với InnoDB. Nếu bạn đang chạy các phiên bản MySQL cũ hơn, tốt nhất là bạn nên nâng cấp máy chủ của mình.

Để cài đặt phiên bản mới nhất của máy chủ MySQL trong Ubuntu, hãy sử dụng lệnh:

  apt-get install mysql-server-5.6  

Thao tác này sẽ cài đặt máy chủ MySQL 5.6 với hỗ trợ InnoDB, miễn là tất cả các phần phụ thuộc đều được cài đặt.

Những điểm cần lưu ý ..

Tệp ‘ibdata1’ chứa dữ liệu của cơ sở dữ liệu InnoDB và không bao giờ được xóa.

Vì vậy, trước khi thực hiện bất kỳ thay đổi nào đối với máy chủ MySQL, chúng tôi luôn tạo bản sao lưu các thay đổi này:

a. Thư mục dữ liệu MySQL (thường ở / var / lib / mysql )

b. Tệp cấu hình MySQL (mặc định tại /etc/my.cnf)

Hôm nay, chúng ta đã xem các nguyên nhân chính gây ra lỗi “Công cụ bảng không xác định” innodb “và cách khắc phục chúng. Ngoài những lỗi này, một số lỗi cấu hình cũng có thể dẫn đến lỗi.

XEM THÊM  Hướng dẫn về Biểu tượng Vật liệu - biểu tượng truyền thông xã hội phông chữ google

Việc kiểm tra nhật ký lỗi MySQL, quyền, tài nguyên, v.v. có thể rất quan trọng để giải quyết các lỗi liên quan đến InnoDB. Trong các tình huống quan trọng, cũng cần khôi phục từ các bản sao lưu.

Tại Bobcares, chúng tôi thực hiện các dịch vụ ứng cứu sự cố với thời gian ngừng hoạt động tối thiểu, ngay cả đối với các máy chủ có dữ liệu bị hỏng hoàn toàn và không có bản sao lưu.

Đọc: Ứng cứu sự cố cơ sở dữ liệu – Cách chúng tôi xây dựng lại cơ sở dữ liệu InnoDB MySQL khi tệp ibdata1 bị hỏng


Xem thêm những thông tin liên quan đến chủ đề động cơ bàn không rõ innodb

ASYNC JavaScript trong 30 phút (CALLBACK, PROMISES, ASYNC AWAIT)

alt

  • Tác giả: HoleTex
  • Ngày đăng: 2021-11-28
  • Đánh giá: 4 ⭐ ( 8733 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Học ASYNC JavaScript trong 30 phút (CALLBACK, PROMISES, ASYNC AWAIT)

    Xử lý bất đồng bộ trong JS là một công việc chúng ta sẽ phải đối mặt rất thường xuyên. Và hôm nay chúng ta sẽ cùng nhau tìm hiểu về các cách khác nhau để xử lý bất đồng bộ trong JS, cũng như là tìm hiểu về các vấn đề khi xử lý bất đồng bộ với Callback như là Callback Hell
    – Callback
    – Promises
    – Async/Await

    📢 Liên hệ với mình tại:
    Facebook: https://www.facebook.com/holetex/​
    Instagram: https://www.instagram.com/holetex/
    Github: https://github.com/holetexvn
    Facebook cá nhân: https://www.facebook.com/minhtung09/
    Email: [email protected]

    async js holetex callback asyncawait promises

Động Cơ Điện Không Đồng Bộ Khái Niệm, Cấu Tạo, Nguyên Lý Hoạt Động, Ứng Dụng

  • Tác giả: minhmotor.com
  • Đánh giá: 3 ⭐ ( 6465 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Động cơ không đồng bộ là gì? Có 2 loại gồm đồng cơ không đồng bộ 3 pha và động cơ không đồng bộ 1 pha. Động cơ không đồng bộ ba pha biến điện năng thành cơ năng, máy phát điện xoay chiều

InnoDB: Lỗi: Bảng không được tìm thấy trong bảng mys mys. Không thể tìm thấy bảng innodb_table_stats ‘sau khi nâng cấp lên mysql 5.6

  • Tác giả: qastack.vn
  • Đánh giá: 3 ⭐ ( 5722 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: [Tìm thấy giải pháp!] Trước đây tôi đã giải quyết vấn đề này trong: Không thể mở bảng mysql /…

Cấu hình innodb_force_recovery để sửa lỗi MySQL – Tài liệu hướng dẫn sử dụng dịch vụ hosting vps email

  • Tác giả: kb.hostvn.net
  • Đánh giá: 4 ⭐ ( 3835 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Không thể giảm innodb_buffer_pool_size

  • Tác giả: vie.cyprianscenter.org
  • Đánh giá: 5 ⭐ ( 8202 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Vấn đề thực sự khó chịu. Innodb_buffer_pool_size của tôi được đặt thành 32M và tôi muốn giảm nó xuống. Biến trong my.cnf thực sự được đặt thành 2M và tôi không thể tìm thấy bất kỳ tệp cấu hình ghi đè nào khác (…

23 lần dứt điểm, 9 cơ hội rõ rệt, 0 bàn thắng

  • Tác giả: www.sggp.org.vn
  • Đánh giá: 5 ⭐ ( 8103 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Không rõ động cơ thảm sát ở Bỉ

  • Tác giả: plo.vn
  • Đánh giá: 5 ⭐ ( 1692 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Ngày 14-12, cảnh sát đã tìm thấy xác một phụ nữ tại nhà hung thủ Nordine Amrani, 33 tuổi ở Liège (Bỉ), nâng số người chết trong vụ thảm sát lên năm người và 125 người bị thương.

Xem thêm các bài viết khác thuộc chuyên mục: WordPress

By DEVTEAM