2013-06-24 16 views
8

Tôi đang cố gắng cài đặt Magento trên máy chủ cục bộ bằng WAMP. InnoDB được đặt làm công cụ mặc định nhưng vẫn hiển thị thông báo cho tôi:InnoDB hoạt động, vẫn hiển thị "Máy chủ cơ sở dữ liệu không hỗ trợ thông báo động cơ lưu trữ InnoDB"

Máy chủ cơ sở dữ liệu không hỗ trợ công cụ lưu trữ InnoDB.

Tôi thực sự không biết phải làm gì. Ai đó có thể giúp đỡ?

+0

Có lẽ điều này giúp đỡ: [Magento-1,7-thể-không-được-cài đặt-với-MySQL -5.6] (http://www.joomlacreator.com/blog/Magento-1.7-can-not-be-installed-with-MySQL-5.6-due-to-the-lack-of-InnoDB-storage-engine) –

+0

Hãy xem @ http://stackoverflow.com/questions/15443448/magento-complains-missing-innodb-when-it-is-available –

Trả lời

3

Nếu tôi nhớ chính xác WAMP Server đi kèm với vô hiệu hóa innodb, nhưng nó là một công việc đơn giản để kích hoạt nó.

Sửa my.ini (sử dụng các menu wampmanager để chỉnh sửa)

Look cho dòng này, nó xấp xỉ xung quanh dòng 90-100, bạn sẽ thấy một tập hợp các paramteters tất cả nhận xét ra. Loại bỏ # để nó không còn là một bình luận nữa. Bạn có thể phải làm một chút reasearch về những gì params có nghĩa là và sau đó bạn có thể phải làm một số tweeking để có được innodb làm việc tốt, nhưng chỉ uncommenting họ nên kích hoạt innodb.

# Uncomment the following if you are using InnoDB tables 
innodb_data_home_dir = D:/wamp/bin/mysql/mysql5.5.28/data/ 
innodb_data_file_path = ibdata1:64M:autoextend 
innodb_log_group_home_dir = D:/wamp/bin/mysql/mysql5.5.28/data/ 
# You can set .._buffer_pool_size up to 50 - 80 % 
# of RAM but beware of setting memory usage too high 
innodb_buffer_pool_size = 16M 
innodb_additional_mem_pool_size = 4M 

Khởi động lại dịch vụ MySQL sau khi bạn đã thay đổi và lưu tệp ini.

30

Go To Dòng 59 của ứng dụng tập tin/code/core/Mage/Cài đặt/mẫu/Installer/Db/Mysql4.php

Thay thế:

public function supportEngine() 
{ 
    $variables = $this->_getConnection() 
     ->fetchPairs('SHOW VARIABLES'); 
    return (!isset($variables['have_innodb']) || $variables['have_innodb'] != 'YES') ? false : true; 
} 

Với điều này:

public function supportEngine() 
{ 
    $variables = $this->_getConnection() 
     ->fetchPairs('SHOW ENGINES'); 
    return (isset($variables['InnoDB']) && $variables['InnoDB'] != 'NO'); 
} 
+0

Cảm ơn câu trả lời. –

+0

Cảm ơn! Làm tốt lắm! –

+0

Cảm ơn bạn Thân mến, Hoạt động tốt –

0

1) Xóa và dán Magento lần nữa

2) Chuyển đến MySQL >> my.ini và thay đổi mã sau đây (kiểm tra ve số rsion):

# Uncomment the following if you are using InnoDB tables 
innodb_data_home_dir = D:/wamp/bin/mysql/mysql5.5.28/data/ 
innodb_data_file_path = ibdata1:10M:autoextend 
innodb_log_group_home_dir = D:/wamp/bin/mysql/mysql5.5.28/data/ 
# You can set .._buffer_pool_size up to 50 - 80 % 
# of RAM but beware of setting memory usage too high 
innodb_buffer_pool_size = 16M 
innodb_additional_mem_pool_size = 4M 

3) Truy cập ứng dụng/code/core/Mage/Cài đặt/mẫu/Installer/Db/Mysql4.php và thay đổi mã như sau:

public function supportEngine() 
{ 
    $variables = $this->_getConnection() 
     ->fetchPairs('SHOW ENGINES'); 
    return (isset($variables['InnoDB']) && $variables['InnoDB'] != 'NO'); 
} 

4) Truy cập phpMyAdmin và đảm bảo người dùng của bạn đang ở trên máy chủ 127.0.0.1 (không phải "localhost" không phải bất kỳ "%")

Tôi sẽ không làm việc đó mà không có sự đóng góp của mọi người trên trang web này, vì vậy tín dụng đi đến hai ở trên tôi và một số người dùng khác từ các trang khác.

Điều này hy vọng sẽ khắc phục được mọi sự cố, nó đã hoạt động với tôi.

0

Điều này xảy ra vì phiên bản mới hơn không hỗ trợ bộ nhớ đệm. Vui lòng cài đặt phiên bản trước đó của mysql của Wamp từ trang web chính thức của họ. Không cần phải cài đặt wamp hoàn chỉnh. Chỉ cần mysql. Và khi được yêu cầu, chỉ cần chọn đúng phiên bản của mysql từ wamp.

4

Tôi đã gặp phải lỗi này trong cài đặt mặc định từ trình tải xuống.

vì trình tải xuống dựa vào biến have_innodb, đó là từ phiên bản mysql 5.6.1.tài liệu có sẵn và chính thức (http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html#sysvar_have_innodb) khẳng định để sử dụng "HIỂN THỊ ĐỘNG CƠ" thay vào đó, tôi đã sửa đổi các tập tin downloader cho phù hợp:

/** 
* Check availabe InnoDB on database. 
* 
* @return Magento_Downloader_Validator 
*/ 
protected function _checkDbInnoDb() 
{ 
    if (!$this->_connection) { 
     return $this; 
    } 

    $result = $this->_connection->query('SHOW ENGINES'); 
    while($row = $result->fetch()){ 
     if($row["Engine"] == "InnoDB" && $row["Support"] != "NO"){ 
      $this->addMessage('Database server supports InnoDB storage engine'); 
      return $this; 
     } 
    } 
    $this->addError('Database server does not support InnoDB storage engine'); 
    return $this; 
} 
Các vấn đề liên quan