最近在做一个Magento 1.7.0.2的站,在安装环节Magento一直报错Database server does not support the InnoDB storage engine.
我在mysql中show engines phpinfo()查看,我的InnodB都是正常的。
首先,报错的原因是因为Mysql 5.6.1版本已经已经丢弃了“have_innodb”这个函数.而Magento1.7.0.2以下,都是使用该函数检测Mysql是否激活了InnodB引擎。
上代码::
首先,打开文件:app/code/core/Mage/Install/Model/Installer/Db/Mysql4.php
大概在65行你会找到以下代码:
$variables
=
$this
->_getConnection
->fetchPairs(
'SHOW VARIABLES'
);
找到这部分代码之后在后面贴上下面的代码就ok了
if
(!isset(
$variables
[
'have_innodb'
])) {
$engines
=
$this
->_getConnection()->fetchPairs(
'SHOW ENGINES'
);
return
(isset(
$engines
[
'InnoDB'
]) && (
$engines
[
'InnoDB'
] ==
'DEFAULT'
||
$engines
[
'InnoDB'
] ==
'YES'
));
}
好了,这下你的Magento可以正常安装了。。
PS:Database server does not support the InnoDB storage engine这个错误都是Magento没有检测到InnodB引擎产生的,使用以上方法的前提是需要确定InnodB已经正常安装以及运行.可以再mysql命令行下输入:show engines;检查mysql加载了哪些引擎。
原文:http://xiongm611.blog.163.com/blog/static/169663050201351192747963/
magento多语言解决方案
可能很多做外贸的朋友都了解,很多时候我可能都要去拿一个正品站点的样式然后扔给程序员仿站,magento程序员其实很灵活,可以用它按需建站,各式各样的站,做过magento模板开发的朋友大概都知道,老板给我们一个样品站,我就会不停的在app,skin目录下下来回折腾,反正我是认为做模板是挺耗时的,做多了可能会不耐烦,每天都做那些事。
下面和大家说说magento的多语言站的实现:首页我们在服务器上装好magento,安装就不说了,如果服务器是空壳的,还需要我们具体去配置lamp,具体步骤大家去参考相关资料,介于magento程序的特殊性,可能有些想用magento单干的朋友,这里提醒大家一句:可能由于资费的原因,你们会去选择一些比较廉价的主机,不管是国内的,还是国外的,大家一定要注意主机或服务器数据库是否支持InnoDB数据库引擎,不然到时候可能程序上传上去之后会安装不了。
以上步骤做完,我就上模板,模板设置好,接下来来进行针对性语言设置,例如你想用magento做中文站,法语站,日语站等等,大家可能都会有类似的需求吧,首页我们去magento官方去下载语言包,一种方法是通过magento后台自带的下载工具,通过url下载,第二种通过浏览器下载了,下载后,将语言包覆盖在magento的源程序中,一般放在app/locale/目录下。然后去后台system/configure设置语言。好搞定,
原文:http://xiongm611.blog.163.com/blog/static/169663050201351481019183/