Ответить Новая тема Новый опрос 
 Создание таблиц базы данных запнулось
PTZ-M
Новичок
Сообщений: 2
Регистрация: 18-10-2017


18-10-2017 22:02
На 12% при чистой установки вывалилась ошибка.

Код:
Во время инсталляции произошла ошибка...

Вы можете использовать ссылки в левой колонке для перехода к предыдущим этапам или даже начать установку заново, кликнув здесь.

    1: Updating database schema...
    2: Executing: CREATE TABLE ps_attribute (id_attribute INT AUTO_INCREMENT NOT NULL, id_attribute_group INT NOT NULL, color VARCHAR(32) NOT NULL, position INT NOT NULL, INDEX attribute_group (id_attribute_group), PRIMARY KEY(id_attribute)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB
    3:
    4:
    5: [Doctrine\DBAL\Exception\DriverException]
    6: An exception occurred while executing 'CREATE TABLE ps_attribute (id_attribute INT AUTO_INCREMENT NOT NULL, id_attribute_group INT NOT NULL, color VARCHAR(32) NOT NULL, position INT NOT NULL, INDEX attribute_group (id_attribute_group), PRIMARY KEY(id_attribute)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB':
    7: SQLSTATE[42000]: Syntax error or access violation: 1286 Unknown storage engine 'InnoDB'
    8:
    9:
    10:
    11: [Doctrine\DBAL\Driver\PDOException]
    12: SQLSTATE[42000]: Syntax error or access violation: 1286 Unknown storage engine 'InnoDB'
    13:
    14:
    15:
    16: [PDOException]
    17: SQLSTATE[42000]: Syntax error or access violation: 1286 Unknown storage engine 'InnoDB'
    18:
    19:
    20: prestashop:schema:update-without-foreign [-h|--help] [-q|--quiet] [-v|vv|vvv|--verbose] [-V|--version] [--ansi] [--no-ansi] [-n|--no-interaction] [-s|--shell] [--process-isolation] [-e|--env ENV] [--no-debug] [--id_shop [ID_SHOP]] [--id_shop_group [ID_SHOP_GROUP]] [--]
    21:
    22:



В соседней теме рекомендовали удалить код из DbPDO.php, но 1.7 его уже нет, а есть:
Код:
public function getBestEngine()
    {
        $value = 'InnoDB';

        $sql = 'SHOW VARIABLES WHERE Variable_name = \'have_innodb\'';
        $result = $this->link->query($sql);

        if (!$result) {
            $value = 'MyISAM';
        }else {
            $row = $result->fetch();
            if (!$row || strtolower($row['Value']) != 'yes') {
                $value = 'MyISAM';
            }
        }


        /* MySQL >= 5.6 */
        $sql = 'SHOW ENGINES';
        $result = $this->link->query($sql);
        while ($row = $result->fetch()) {
            if ($row['Engine'] == 'InnoDB') {
                if (in_array($row['Support'], array('DEFAULT', 'YES'))) {
                    $value = 'InnoDB';
                }
                break;
            }
        }

        return $value;
    }


как правильно пофиксить?
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
AK-74
Cпециалист
Сообщений: 115
Регистрация: 01-02-2016


19-10-2017 01:40
Вообще то похоже что у вас MySQL без поддержки InnoDB, а Doctrine без него не работает. В ней активно используются транзакции. В 1.6 была возможность выбора между InnoDB и MyISAM.


Сообщение отредактировал AK-74 (19-10-2017 02:44)
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
AK-74
Cпециалист
Сообщений: 115
Регистрация: 01-02-2016


19-10-2017 01:55
Точнее Doctrine работает с MyISAM, но при определенных условиях, которые в Престе 1.7 не соблюдаются. Поэтому требуется чтобы MySQL поддерживал InnoDB в обязательном порядке.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
PTZ-M
Новичок
Сообщений: 2
Регистрация: 18-10-2017


19-10-2017 03:22
Тогда у меня тупняк. В авто-установщике hostinger.ru прописана версия 1.7.2.2, я ставлю вручную 1.7.2.3. Нужно донастраивать БД через майадмин?


Сообщение отредактировал PTZ-M (19-10-2017 04:22)
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Ответить Новая тема Новый опрос