[sisyphus] IA: MySQL
Konstantin A. Lepikhov
=?iso-8859-1?q?lakostis_=CE=C1_anti-leasure=2Eru?=
Чт Фев 2 00:30:23 MSK 2006
Hi!
Итак, сегодня в i/S направлен новый MySQL (версия 5.0.18). Что нужно ждать
от этого:
- возникнут проблемы с кодировками. Т.к. теперь MySQL поддерживает уникод,
то серверу теперь придется явно говорить, в какой кодировке хранить и
отдавать данные, без указания этих данных, он будет отдавать все в
latin1 aka "вопросики". Зато теперь можно перекодировать ответы на лету
:) За деталями по этому вопросу лучше см. здесь -
http://dev.mysql.com/doc/refman/4.1/en/charset.html
- все, кто использует fulltext indexes, должны сделать optimize/repair
table для myisam и dump/restore для innodb после обновления, т.к.
изменился порядок индексирования для TEXT columns.
- Начиная с версии 4.1 изменился алогоритм хеширования паролей функцией
password(), см.
http://dev.mysql.com/doc/refman/4.1/en/password-hashing.html. Для
совместимости со старыми клиентами (<=4.0) сервер запускается с опцией
old-passwords=1, что допускает использование старых хешей.
- Все, кто используют AUTOCOMMIT=1 и LOCK TABLES в innodb, должны добавить
в /var/lib/mysql/my.cnf строку innodb_table_locks=0, иначе возможны
блокировки в работе SQL приложений.
- как известно, тип хранилища dbd не поддерживает x86_64, поэтому, т.к. мы
собираем теперь под 2 архитектуры, bdb-storage отключен по-умолчанию в
/var/lib/mysql/my.cnf. Те, кто использует bdb и обновляется на эту
версию MySQL должны закомментировать строку skip-bdb в
/var/lib/mysql/my.cnf (также это могут сделать обладатели amd64, т.к. у
нас есть волшебный патчик, делающий возможным работу bdb на x86_64 и
amd64). Эта опция обсуждаема, я склоняюсь к runtime правке my.cnf в
зависимости от сборочной архитектуры.
У меня переезд прошел более-менее гладко, особых проблем не заметил :)
Также в i/S выложен libmysqlclient12 для поддержания работоспособными
старых приложений, по каким-то причинам зависящих от MySQL 4.0.x. Правила
обновления таковы (как преложение) - каждый мантейнер решает сам,
пересобирать ли его приложение с новой libMySQL или нет. Для ускорения
решения можно поставить deadline до 3х месяцев, а потом пересбрать всех
роботом. Что не собралось и мантейнеры не откликнулись - выкинуть в
orphaned, что собралось, но не заработало/не собралось и мантейнеры
подтвердят проблему - откатить на libmysqlclient12 и пинать upstream.
PS Как всегда, после обновления убедительно рекомендую сказать
mysql_fix_privilege_tables и поправить владельца на mysql у файлов в
/var/lib/mysql/db/mysql/* Возможно, эта операция будет автоматизирована в
след. релизе.
--
WBR, Konstantin chat with ==>ICQ: 109916175
Lepikhov, speak to ==>JID: lakostis на jabber.org
aka L.A. Kostis write to ==>mailto:lakostis на pisem.net.nospam
...The information is like the bank... (c) EC8OR
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 189 байтов
Описание: Digital signature
Url : <http://lists.altlinux.org/pipermail/sisyphus/attachments/20060202/fe03ec07/attachment-0003.bin>
Подробная информация о списке рассылки Sisyphus