User Tools

Site Tools


Sidebar


Здравствуйте!

Меня зовут Михаил!
Я системный администратор
и наполняю эту wiki,
решая разнообразные IT-задачки.

Моя специализация - виртуализация!

Я всегда готов помочь Вам
наладить IT-инфраструктуру
за скромное вознаграждение!

mike@autosys.tk
+7 (910) 911-96-23

linux_faq:roundcubemail_upgrade_error_database_schema_update

при обновлении roundcube возникает ошибка:

 
Running update script at target...
Executing database schema update.
Error 500: Error in DDL upgrade 2016112200: [1060] Duplicate column name 'id'
Updating database schema (2016112200)... [FAILED]

Она сообщает, что при попытке обновления mysql-базы roundcube, скрипт пытается создать колонку, которая уже существует.
Выход - либо поправить скрипт обновления, либо привести базу в соответствие со скриптом. Я попытался привести базу в соответствие со скриптом. Запускаем mysql и удаляем руками колонку id из таблицы dictionary

sudo mysql
mysql> USE roundcubemail;
mysql> ALTER TABLE dictionary DROP id;

После этого - восстанавливаю папку с roundcube из бекапа в состояние, которое было до апгрейда (/opt/www/roundcube) и пытаюсь запустить апгрейд снова.
Теперь скрипт ругается на отсутствие прав на некоторые таблицы. Даем эти права:

sudo mysql
mysql> USE roundcubemail;
mysql> GRANT CREATE ON roundcubemail.* TO 'roundcube'@'localhost';
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,DROP ON cache_shared to 'roundcube'@'localhost';
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,DROP ON cache to 'roundcube'@'localhost';
mysql> GRANT REFERENCES ON users to 'roundcube'@'localhost';
mysql> flush privileges;

В дальнейшем mysql-скрипт 2016112200 ругался еще на какие-то объекты, которые уже были в базе, а он пытался их пересоздать и я отредактировал сам скрипт из папки ./SQL/… В общем - обновиться получилось.

Discussion

Enter your comment. Wiki syntax is allowed:
Y K J A M
 
linux_faq/roundcubemail_upgrade_error_database_schema_update.txt · Last modified: 2018/08/30 10:38 by admin