1071: Specified key was too long. Max key length is 500

1071: Specified key was too long. Max key length is 500

Bởi Long Truong -
Số lượng các câu trả lời: 8

Xin chào các bạn,

Tôi đã download moodle 1.8 và tiến hành cài đặt thì bị báo lỗi ngay quá trình tạo database như sau:

(mysql): CREATE INDEX mdl_glosentr_con_ix ON mdl_glossary_entries (concept)  

1071: Specified key was too long. Max key length is 500

adodb_mysql._execute(CREATE INDEX mdl_glosentr_con_ix ON mdl_glossary_entries (concept), false) % line  889, file: adodb.inc.php
         adodb_mysql.execute(CREATE INDEX mdl_glosentr_con_ix ON mdl_glossary_entries (concept)) % line   89, file: dmllib.php
      execute_sql(CREATE INDEX mdl_glosentr_con_ix ON mdl_glossary_entries (concept), true) % line 1899, file: dmllib.php
   execute_sql_arr(Array[42]) % line  548, file: ddllib.php
install_from_xmldb_file(C:\Inetpub\wwwroot\moodle/mod/glossary/db/install.xml) % line  328, file: adminlib.php

Lỗi này cũng xảy ra ở Moodle 1.7.x.  Lỗi này theo tôi nghĩ là do các field tạo key của table mdl_glossary_entries lớn hơn 500.  Tôi đã giảm độ lớn của các fields gây ra lỗi trong file install.xml và tiến hành thử lại thì hệ thống qua cài đặt qua được bước này như lại phát sinh lỗi tương tự ở những table khác.  Tôi tiếp tục hiệu chỉnh các file install.xml tương tự và thử lại cho đến khi thành công.

Mặc dù sau đó quá trình cài đặt thành công nhưng tôi nghĩ nguyên nhân sâu xa nằm ở chỗ khác.  Nếu các bạn nào có giải pháp khác xin vui lòng cho tôi biết để có thể cài đặt moodle 1.8 một cách suôn sẽ hơn.

Xin cám ơn rất nhiều.

Trung bình điểm đánh giá: -
Để phản hồi tới Long Truong

Re: 1071: Specified key was too long. Max key length is 500

Bởi Vu Hung -
Chào bạn,
Theo kinh nghiệm của tôi, nguyên nhân có thể là phiên bản MySQL. Bạn dùng phiên bản MySQL bao nhiêu? Nếu bạn dùng từ 5.0.22 trở về trước thì sẽ không có vấn đề này thì phải.
Để phản hồi tới Vu Hung

Re: 1071: Specified key was too long. Max key length is 500

Bởi Long Truong -

Chào anh Hùng,

Tôi đang sử dụng mySQL phiên bản 5.0.0-nt-alpha.  Anh Hùng cài thử 1.8 chưa (Fresh Installation đấy) để xem anh có bị lỗi tương tự như vậy không?

Cám ơn anh.

Để phản hồi tới Long Truong

Trả lời: Re: 1071: Specified key was too long. Max key length is 500

Bởi Phuong Nguyen Thanh -

Mình cũng gặp trường hợp này. Hiển thị 23 lỗi.

Mình đang làm đề tài thực tập, rất cần sự giúp đỡ !

Cám ơn các bạn !!!

Để phản hồi tới Phuong Nguyen Thanh

Re: Trả lời: Re: 1071: Specified key was too long. Max key length is 500

Bởi Vu Hung -
Tôi đã thử cài bản Moodle 1.8 stable release 31/3/2007 và chạy tốt. Môi trường như sau (có thể dùng xem trong Moodle):

1. MySQL: 5.0.22
2. PHP: 5.1.4
3. IIS 5.1

Các bạn check lại môi trường xem lại và feedback lại cho tôi.
Để phản hồi tới Vu Hung

Trả lời: Re: Trả lời: Re: 1071: Specified key was too long. Max key length is 500

Bởi Phuong Nguyen Thanh -

Cám ơn anh Vũ Hùng nhiều !

Em mới cài được Moodle 1.8.1 (Trong Moodle In Box) trong môi trường:

1. MySQL 5.0.22

2. PHP 4x

3. IIS 5.1

Em đang Config lại file PHP.ini của PHP5x nhưng chưa thành công. Một số phần cơ bản thì em đã làm được.

Anh có thể giúp em file đó được ko ạh !?

Em cám ơn anh nhiều.

Để phản hồi tới Phuong Nguyen Thanh

Re: Trả lời: Re: Trả lời: Re: 1071: Specified key was too long. Max key length is 500

Bởi Vu Hung -
Em nói rõ hơn là em đã cấu hình những phần gì thành công và những phần gì chưa thành công ở chỗ nào? Em đã cài đến bước nào rồi?
Để phản hồi tới Vu Hung

Re: Trả lời: Re: 1071: Specified key was too long. Max key length is 500

Bởi Long Truong -

Chào anh Hùng,

Máy tôi cấu hình như sau:

1. mySQL: 5.0.0-nt-alpha
2. PHP: 4.2.3
3. IIS: 5.1
4. Moodle: 1.8+ (Generic Package: Standard Moodle Distribution)

Tôi không sử dụng gói XAMPP vì tôi nghĩ gói Generic theo lý thuyết là phải cài đặt được.

Thân chào.

Long

Để phản hồi tới Long Truong

Re: Trả lời: Re: 1071: Specified key was too long. Max key length is 500

Bởi Vu Hung -
Đúng là như anh nói có thể cài riêng rẽ như vậy vì đa số các site chạy thật đều cài theo cách đó.

Anh thử thay bản MySQL mới hơn đi vì bản của anh là alpha nháy. PHP anh cũng có thể thay bằng bản 5.x tải về từ www.php.net.