Bug 26541

Summary: Нет коннекта к mysql
Product: Sisyphus Reporter: Sergei Naumov <Sergei.Naumov>
Component: akonadiAssignee: Sergey V Turchin <zerg>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P3 CC: darktemplar, zerg
Version: unstable   
Hardware: all   
OS: Linux   
Bug Depends on: 23336    
Bug Blocks:    
Attachments:
Description Flags
mysql.tar.gz none

Description Sergei Naumov 2011-11-01 13:41:34 MSK
Обновился до akonadi-1.6.2-alt5 сегодня. После этого потерялась возможность коннектиться к mysql'ю:

Database error: Cannot open database. 
  Last driver error: "QMYSQL: Unable to connect" 
  Last database error: "Access denied for user 'serge'@'localhost' (using password: NO)" 

Соответственно, ни kmail, ни консоль akonadi не могут работать.
Comment 1 Sergey V Turchin 2011-11-01 13:55:50 MSK
В качестве обходного пути пока можно
rm -f ~/.local/share/akonadi/db_data/mysql.*
mysql_upgrade --force --socket=/home/${LOGNAME}/.local/share/akonadi/`hostname`/mysql.socket
и перезапустить akonadi
Comment 2 Sergey V Turchin 2011-11-01 14:18:45 MSK
Хотя, не получиться. Необходимо подождать исправления, чтобы это стало возможно сделать
Comment 3 Sergey V Turchin 2011-11-01 14:31:39 MSK
И инструкция будет выглядеть не так.
Остановить akonadi
rm -f ~/.local/share/akonadi/db_data/mysql/*
Запустить akonadi
mysql_upgrade --force --socket=/home/${LOGNAME}/.local/share/akonadi/`hostname`/mysql.socket
Перезапустить akonadi

Пока разбираюсь, отправляю исправление, чтобы возможно было сделать это.
http://git.altlinux.org/tasks/57626/
Comment 4 Sergei Naumov 2011-11-01 15:45:01 MSK
1. Остановил akonadi из настроек kde
2. удавил все в ~/.local/share/akonadi/db_data/mysql
3. запустил akonadi из настроек kde
4. из-под юзера serge запустил
mysql_upgrade --force --socket=/home/serge/.local/share/akonadi/`hostname`/mysql.socket
5. Получил банан:
Looking for 'mysql' as: mysql
Looking for 'mysqlcheck' as: mysqlcheck
Running 'mysqlcheck' with connection arguments: '--socket=/home/serge/.local/share/akonadi/yarilo.lan.megafonkavkaz.ru/mysql.socket' 
mysqlcheck: Got error: 2002: Can't connect to local MySQL server through socket '/home/serge/.local/share/akonadi/yarilo.lan.megafonkavkaz.ru/mysql.socket' (2) when trying to connect
FATAL ERROR: Upgrade failed

Попытался из-под рута - то же самое.
Comment 5 Sergey V Turchin 2011-11-01 15:46:39 MSK
(В ответ на комментарий №4)
> Получил банан:
См.comment #2
Comment 6 Sergei Naumov 2011-11-01 15:50:18 MSK
Я только не пойму, почему в этих командах сокет mysql лежит в `hostname`/mysql.sock. Его же там нет в работающей копии mysql. Для нее файл сокета лежит в .local/share/akonadi/socket-yarilo.lan.megafonkavkaz.ru/mysql.socket
Comment 7 Sergei Naumov 2011-11-01 15:52:56 MSK
(В ответ на комментарий №5)
> (В ответ на комментарий №4)
> > Получил банан:
> См.comment #2

Когда?
Comment 8 Sergei Naumov 2011-11-01 15:55:40 MSK
Есть ли возможность прислать готовый rpm для x86? А то пока он дойдет до репозитария, крыша съедет: надо срочно почту поглядеть и прочесть... :-((
Comment 9 Sergey V Turchin 2011-11-01 16:00:10 MSK
Created attachment 5182 [details]
mysql.tar.gz

Могу дать саму базу "mysql". Инструкция с командами -- только для ее создания.
Comment 10 Sergei Naumov 2011-11-01 16:32:28 MSK
(В ответ на комментарий №9)
> Created an attachment (id=5182) [details]
> mysql.tar.gz
> 
> Могу дать саму базу "mysql". Инструкция с командами -- только для ее создания.

Интересно. Остановил akonadi, удавил mysql. Залил вместо него новый, стартовал akonadi. В логах ничего нет, все запустилось (нет даже akonadiserver.error). Однако, с первого раза не вышло. Остановил еще раз, еще раз снес mysql и заново залил. Теперь вроде завелось. Сейчас проверю все еще раз.
Comment 11 Repository Robot 2011-11-02 15:36:46 MSK
akonadi-1.6.2-alt7 -> sisyphus:

* Wed Nov 02 2011 Sergey V Turchin <zerg@altlinux> 1.6.2-alt7
- using own mysql_install_db (ALT#26541)

* Tue Nov 01 2011 Sergey V Turchin <zerg@altlinux> 1.6.2-alt5.M60P.1
- built for M60P
Comment 12 Sergey V Turchin 2011-11-02 15:41:59 MSK
Исправление рассчитано только на 1-й запуск akonadi. Для уже созданной базы нужно заменить базу mysql в ~/.local/share/akonadi/db_data/ на прикрепленную сюда (остановить akonadi перед этим `kcmshell4 akonadi`).