Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Linux и FreeBSD » Программное обеспечение Linux и FreeBSD » Разные кодировки в MySQL

Ответить
Настройки темы
Разные кодировки в MySQL

Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Изменения
Автор: Red-Hat
Дата: 29-11-2004
Привет всем!

Подскажите пожалуйста как правильно настроить MySQL чтобы правильно обрабатывалось содержимое базы, в разных таблицах которой инфа записна русским языком но в разных кодировках, в частности в koi8r и cp1251?

Если использовать настройки кодировок по умолчанию - то всё отображается нормально но сортировка средствами мускуля обрабатывается неправильно. Если в настроики кодировок в
my.cnf установить одну из кодировок то сортировка начинает работать но теряется работоспособность со второй базой.

ПО: Red-Hat-9+MySQL-4-1-7+php-3.4.3+Perl-5.8.0+Apache-2.0.52
всё взято с официальных сайтов производителей соответствующего ПО.

При установке default_caracter_set = koi8r в my.cnf апач выдает следующую ошибку:

File '/usr/share/mysql/charsets/?.conf' not found (Errcode: 2)

Character set '#7' is not a compiled character set and is not specified in the '/usr/share/mysql/charsets/Index' file

Хотя обе эти кодировки вкомпилированы и указаны во всех конфигурационных файлах и лежет в указанной в ошибке директори.

Заранее спасибо!!!

Отправлено: 12:18, 29-11-2004

 

Аватара для archy

Ветеран


Сообщения: 659
Благодарности: 3

Профиль | Отправить PM | Цитировать


Попробуй покрутить SET CHARACTER SET=
Лучше для этого глянуть в доках, там подробно написано...

Отправлено: 10:53, 01-12-2004 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 21
Благодарности: 0

Профиль | Отправить PM | Цитировать


Проверь конф. файл апача httpd.conf,
MySQL - от туда берет все кодировки

-------
Учение - свет, а не учение - чуть свет, и на работу!!!


Отправлено: 21:24, 17-12-2004 | #3

mar mar вне форума

Аватара для mar

just mar


Moderator


Сообщения: 3904
Благодарности: 163

Профиль | Отправить PM | Цитировать


sbum
не дизенформируйте публику, pls:
во-первых, не в russian apache не ставится кодировки страниц по-умолчанию
во-вторых, mysql - СУБД, которая, хотя и используется часто из web-приложений, но может жить и своей личной жизнью (использоваться, скажем почтовиками и т.д. и т.п.) и в httpd.conf даже не заглядывает

Отправлено: 22:49, 17-12-2004 | #4


Новый участник


Сообщения: 21
Благодарности: 0

Профиль | Отправить PM | Цитировать


mar
Во первых - я не дизенформирую публику, я ни когда не видел russian apache.
Во вторых - от куда тебе известно, какой apache, стоит у задавшего вопрос!!!
И в третьих - у меня БД вертиться 90% под иврит, и поверь мне, это куда посложнее, чем работать со стандартными кодировками.

И в заключении - у меня такая-же была ошибка, на страницу выдавало все в иероглифах, пока в конф. не прописал кодировки иврита!!!

-------
Учение - свет, а не учение - чуть свет, и на работу!!!


Отправлено: 14:18, 18-12-2004 | #5

mar mar вне форума

Аватара для mar

just mar


Moderator


Сообщения: 3904
Благодарности: 163

Профиль | Отправить PM | Цитировать


повторяю: mysql может жить и без апача
Проблему с кодировками mysql, ежели обратиться к документации, по-дефолту решают так, как уже написал archy
В заключение - небольшая заметка от Alexander Voropay
Русские кодировки и сортировка в MySQL
Цитата:
Для правильной работы ORDER BY и GROUP BY сервер MySQL должен знать текущий набор
символов. К сожалению, версии 3.х и 4.х MySQL могут иметь только _один_ charset на
все базы одновременно. Задается в /etc/my.cnf:

[mysqld]
default-character-set=koi8_ru

Проверить можно так:

mysql> show variables like 'character_sets' ;
mysql> show variables like 'character_set' ;

В этом случае все символьные поля _во_всех_ таблицах будут храниться в KOI8-R. Для
того, чтобы работали клиенты ODBC из под Windows необходимо, чтобы первым SQL
оператором в Windows-приложении была команда:

SET CHARACTER SET cp1251_koi8 ;

Тогда включится перекодировка "на лету". Hа сервере будет KOI8-R, а на клиенте
Windows-1251 и все сортировки будут работать. Эту же команду можно прописать в
MyODBC 3.5х "SQL command on connect" (STMT, она выполнится автоматически.

Другой вариант -- не использовать KOI8-R, а хранить базы в Windows-1251 и сообщить
об этом серверу, прописав в /etc/my.cnf:

[mysqld]
default-character-set=cp1251
В заключение - ссылки на документацию

Отправлено: 16:15, 18-12-2004 | #6


Аватара для archy

Ветеран


Сообщения: 659
Благодарности: 3

Профиль | Отправить PM | Цитировать


sbum
Видимо эти жестокие проблемы с кодировакми мешают вам прочитать вопрос

Отправлено: 22:16, 20-12-2004 | #7



Компьютерный форум OSzone.net » Linux и FreeBSD » Программное обеспечение Linux и FreeBSD » Разные кодировки в MySQL

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
кодировки romez777 Программное обеспечение Linux и FreeBSD 7 08-03-2007 05:49
Кодировки Protsko Программное обеспечение Linux и FreeBSD 20 10-08-2006 11:08
Кодировки в DOS unik Microsoft Windows 95/98/Me (архив) 9 29-05-2003 12:20
Разные учетные записи-разные IP (WinXP) ILion Сетевые технологии 1 28-05-2003 10:48




 
Переход