Post by onsisada » Sat Nov 10, 2012 4:33 am

My website running well for the past months.
But suddenly when I access yesterday, the front page was blank.
I still can access admin area and when I check the error log, I found this:

2012-11-09 20:22:05 - PHP Notice: Error: Unknown table engine 'InnoDB'<br />Error No: 1286<br />DELETE FROM `xxx_customer_online` WHERE (UNIX_TIMESTAMP(`date_added`) + 3600) < UNIX_TIMESTAMP(NOW()) in /home/sisxxxx/public_html/system/database/mysql.php on line 49

When I check database, I found this error on 'xxx_customer_online' table.
Error 1286: Unknown table engine 'InnoDB'.

I didn't do anything before, update or install any module. The page just show blank page.
Are there anyone have the same problem with me?

User avatar
Newbie

Posts

Joined
Wed Nov 17, 2010 8:49 am
Location - Batam

Post by JAY6390 » Sun Nov 11, 2012 6:38 am

This is a hosting issue and you'll have to take it up with them. Perhaps they've made some changes to the database configuration

Image


User avatar
Guru Member

Posts

Joined
Wed May 26, 2010 11:47 pm
Location - United Kingdom

Post by onsisada » Sun Nov 11, 2012 7:36 am

I just think so. But still no solution from them about the corrupted table.

Btw, the site already running well.
I delete and replace the corrupted table with the new one from the original installation database.

User avatar
Newbie

Posts

Joined
Wed Nov 17, 2010 8:49 am
Location - Batam

Post by JAY6390 » Sun Nov 11, 2012 8:20 am

The thing is its not a corrupted table. What the innodb error is saying is the table type is incorrect/not handled by MySQL. This is uncommon to be honest. The simplest solution would be to recreate the table using MyISAM instead

Image


User avatar
Guru Member

Posts

Joined
Wed May 26, 2010 11:47 pm
Location - United Kingdom

Post by jbspider » Mon Jan 07, 2013 5:21 am

Hi, I have the same problem.

Seems that the customers_online table is set to use engine innoDB and all other tables use the the MyISAM engine. I checked this in my install scripts.

Somehow the hosting provider has disabled innoDB as it is no longer listed in the information schema for mySQL.

I have disabled customers_online tracking in Admin/Store/Settings to get around this for the time being.

Newbie

Posts

Joined
Mon Jan 07, 2013 5:18 am

Post by kiwicart » Tue Jan 08, 2013 12:26 pm

Yes I had the same problem. I deleted the table in phpMyadmin i then reentered it using

DROP TABLE IF EXISTS `oc_customer_online`;
CREATE TABLE `oc_customer_online` (
`ip` varchar(40) COLLATE utf8_bin NOT NULL,
`customer_id` int(11) NOT NULL,
`url` text COLLATE utf8_bin NOT NULL,
`referer` text COLLATE utf8_bin NOT NULL,
`date_added` datetime NOT NULL,
PRIMARY KEY (`ip`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

but changed the engine to ENGINE=MyISAM to match every other table as mentioned by Jay6390. Then switched on customers_online on again and it worked like a charm.

Newbie

Posts

Joined
Sun Jan 06, 2013 12:00 pm
Who is online

Users browsing this forum: No registered users and 5 guests