LINUX.ORG.RU
ФорумAdmin

Roundcube. Ошибка с таблицами БД

 , ,


0

1

Ставлю почтовый сервер по статье https://selectel.ru/blog/postfix-dovecot-ubuntu/

Ситуевина такая:

  1. дошел до этапа соединения Roundcube с БД и вылетает такая ошибка:
DB Schema:  NOT OK(Error creating database schema: [1709] Index column size too large. The maximum column size is 767 bytes. (SQL Query: CREATE TABLE `cache_shared` (
`cache_key` varchar(255) BINARY NOT NULL,
`expires` datetime DEFAULT NULL,
`data` longtext NOT NULL,
PRIMARY KEY (`cache_key`),
INDEX `expires_index` (`expires`)
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci */))
Please try to inizialize the database manually as described in the INSTALL guide. Make sure that the configured database extists and that the user as write privileges

При ручном импорте дампа БД

># mysql roundcubemail < mysql.initial.sql
ERROR 1709 (HY000) at line 51: Index column size too large. The maximum column size is 767 bytes.

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

P.S.:

mysql --version
mysql  Ver 15.1 Distrib 10.1.48-MariaDB, for debian-linux-gnueabihf (armv7l) using readline 5.2


Последнее исправление: garmayev (всего исправлений: 2)
Ответ на: комментарий от aol

Просто я не админ, а программист. почтовый сервер нужен для разработки нового (или улучшенного) интерфейса. Поэтому пришлось ставить постфикс и т.п. Поэтому и спрашиваю совета, что я делаю не так или как это можно решить

garmayev
() автор топика
Ответ на: комментарий от firkax
Зачем ты что-то устанавливаешь на древний сервер?

Просто это то, что я смог поднять на своей raspberry pi pc2.

Поставь туда актуальную ОС

просто до сих пор требований к моим php-проектам этой пиписи вполне хватало

ставь на старую ОС старый почтовый сервер

А где можно посмотреть соответствие ОС и конктретного ПО?

garmayev
() автор топика
Ответ на: комментарий от aol

Саму ошибку я понимаю. Это идет не соответствие движков InnoDB и MyISAM (по крайней мере я так понял), но как решить эту задачу/проблему в рамках поднятия сервиса roundcube?

Если вы такой гуру-админ, ткните носом в наиболее адекватный мануал по установке связки postfix-mysql-dovecot

garmayev
() автор топика
Ответ на: комментарий от vel

ну да, выкиньте бэху, купите ниву и все поедет…

А по сути вопроса?

САБЖ: Не могли бы вы аргументировать свои выбор в сторону postgres? В чем принципиальное различие между mysql и postgres на ваш взгляд?

garmayev
() автор топика
Ответ на: комментарий от Toxo2

т.е. вы предлагаете изменять дамп, который «из коробки»? Я правильно понял? или все-таки ваше личное мнение, что postgres в данном случае лучше? Почему?

P.S.: не хотелось бы разводить на сервере зоопарк из postgres, mysql и т.п

garmayev
() автор топика
Ответ на: комментарий от Toxo2

Ограничение на 255 символов - это пережиток прошлого.

В 2023 году база данных которая не может сделать индекс для текстового поля длиннее 255 символов должна умереть не должна использоваться :)

vel ★★★★★
()
Ответ на: комментарий от garmayev

Это идет не соответствие движков InnoDB и MyISAM (по крайней мере я так понял)

Откуда ты ЭТО взял и что это вообще означает?

Нет, конечно. Просто у тебя старая mariadb а сервер хочет новее (10.3 хотя бы), где длинные ключи можно.

firkax ★★★★★
()
Ответ на: комментарий от garmayev

Просто это то, что я смог поднять на своей raspberry pi pc2.

А новее не запустилось? Обнови базу.

пиписи

Дело не в железе, а в софте многолетней давности.

А где можно посмотреть соответствие ОС и конктретного ПО?

Возможно у roundcube в мануале где-то указаны минимальные требования к базе. Поставишь 10.3 - всё будет работать.

firkax ★★★★★
()

Ставь iredmail (сборка) А там выберешь себе в установке ldap или mysql. После установи сборки все базы будут работать. И изучай их. Сборка это не отдельное приложение. Это установить Все сразу.

Boatmen
()