我目前正在尝试使用 Google Cloud Compute Engine 和 Google Cloud SQL(MySQL 5.7)设置 Prestashop 1.7 实例。
我设法进入 Prestashop 的安装页面,但是当我尝试将其连接到 Cloud SQL 时出现以下错误:
Your database login does not have the privileges to create table on
the database "prestashop". Ask your hosting provider:
Storage engine MyISAM is disabled (Table creation is disallowed).
我花了很多时间,但还是没能让它工作。我知道 Prestashop 使用 InnoDB 作为默认 SQL 引擎,Cloud SQL 也是如此。
这就是为什么我真正不明白这个错误的根源。
感谢您的帮助 !
答案1
这里遇到了同样的问题,我花了一天时间进行调试...看来 prestashop 的人在转换到 InnoDB 时并没有检查所有内容。
简而言之:
vi ./classes/db/DbPDO.php
以及
public static function checkCreatePrivilege($server, $user, $pwd, $db, $prefix, $engine = null)
寻找:
if ($engine === null) {
$engine = 'MyISAM';
}
并像这样修补:
if ($engine === null) {
$engine = 'InnoDB';
}
希望它也对你有用。
最好的祝福