[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