The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"MySQL 4.1, Кодировки"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"MySQL 4.1, Кодировки" 
Сообщение от rWizard emailИскать по авторуВ закладки(??) on 14-Май-05, 13:27  (MSK)
Здравсвуйте.

Был - mysql 4.1.5, стал mysql 4.1.11
Файлы с тблицами обработались нормально.
Кодтровка на дике - cp1251, кодировка таблицы указанна cp1251,
сервер стартутет с  --default-character-set=cp1251
но при запросах кирилица заменяется "?????".
в консольном клиенте лечится выполнением
"SET CHARACTER SET cp1251_koi8;"
или
"SET CHARACTER SET DEFAULT;"
OS FreeBSD 5.4

Подскажите, куда копать?

  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "MySQL 4.1, Кодировки" 
Сообщение от lia emailИскать по авторуВ закладки(??) on 14-Май-05, 13:52  (MSK)
>Здравсвуйте.
>
>Был - mysql 4.1.5, стал mysql 4.1.11
>Файлы с тблицами обработались нормально.
>Кодтровка на дике - cp1251, кодировка таблицы указанна cp1251,
>сервер стартутет с  --default-character-set=cp1251
>но при запросах кирилица заменяется "?????".
>в консольном клиенте лечится выполнением
>"SET CHARACTER SET cp1251_koi8;"
>или
>"SET CHARACTER SET DEFAULT;"
>OS FreeBSD 5.4
>
>Подскажите, куда копать?


Был такой косяк у меня с вопросами
Решилась проблема так - убрал у сервера --default-character-set
по умолчанию она latin

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "MySQL 4.1, Кодировки" 
Сообщение от rWizard emailИскать по авторуВ закладки(??) on 14-Май-05, 14:01  (MSK)
Пробовал.
Попробовал ещё раз сейчас - есдинственная разница -
"SET CHARACTER SET DEFAULT;" уже не помогает.

Такое ощущение, что что клиент выставляет клиентскую кодировку на latin1.
потому, и проблеммы.
                              session     global
character set client           latin1 cp1251
character set connection latin1 cp1251
character set database        cp1251 cp1251
character set results        latin1 cp1251
character set server        cp1251 cp1251

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "MySQL 4.1, Кодировки" 
Сообщение от lia emailИскать по авторуВ закладки(??) on 14-Май-05, 14:11  (MSK)
Я долго мучался в свое время с этой проблемой,
на сервере настройки с кодировкой не трогай, пускай по умолчанию

и мучай кодировки у клиента

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "MySQL 4.1, Кодировки" 
Сообщение от rWizard emailИскать по авторуВ закладки(??) on 14-Май-05, 14:27  (MSK)
>и мучай кодировки у клиента
дело в том, что клиент -
php-mysql и я не нашел, как там менять настройки клиенткой кодировки при подключении к mysql


  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "MySQL 4.1, Кодировки" 
Сообщение от lia emailИскать по авторуВ закладки(??) on 14-Май-05, 14:35  (MSK)
>>и мучай кодировки у клиента
>дело в том, что клиент -
>php-mysql и я не нашел, как там менять настройки клиенткой кодировки при
>подключении к mysql


Там есть что-то, но это не надо
Лично у меня сайт на пхп крутится в этой связке, а кодировка выставляется уже у апача

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "MySQL 4.1, Кодировки" 
Сообщение от rWizard emailИскать по авторуВ закладки(??) on 14-Май-05, 14:36  (MSK)
Экспереминет показал, что нормальное отображение возможно только, если клиент сказя кодировка равна кодировки базы данных
те так:
Server characterset:    latin1
Db     characterset:    cp1251
Client characterset:    latin1
Conn.  characterset:    latin1
работать не будет

а так:
Server characterset:    latin1
Db     characterset:    cp1251
Client characterset:    cp1251
Conn.  characterset:    cp1251
будет.

вопрос:
как жестко задать кодировку для всех клиентов? (если такое возможно)
или как задать кодировку для php-mysql?

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "MySQL 4.1, Кодировки" 
Сообщение от lia emailИскать по авторуВ закладки(??) on 14-Май-05, 14:45  (MSK)
вот тут ты правильно сказал по поводу кодировок клиента и базы данных.
Поэтому я и говорю (по собственному опыту), что в настройках mysql не пытайся выставлять кодировки, настройки кодировок есть в самой базе данных

А выставлять кодировку надо непосредственно у конечного клиента такую, в какой хранятся данные в базе данных


  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

8. "MySQL 4.1, Кодировки" 
Сообщение от lia emailИскать по авторуВ закладки(??) on 14-Май-05, 14:48  (MSK)
>как жестко задать кодировку для всех клиентов? (если такое возможно)
>или как задать кодировку для php-mysql?


что значит php-mysql ????
если это сайт, то в апаче или тому подобное

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

9. "MySQL 4.1, Кодировки" 
Сообщение от rWizard emailИскать по авторуВ закладки(??) on 14-Май-05, 15:22  (MSK)
там 20 разнообразных движков сайтов на php и ещё скрипты на perl.
кодировку клиента можно установить выполнив
SET NAMES 'cp1251', но не перелопачивать-же из-за этого все движки и скрипты?

Должен-же сущствовать способ глобально установить клиентскую кодировку.
(в /etc/my.cnf - не помогает)

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

10. "MySQL 4.1, Кодировки" 
Сообщение от lavr emailИскать по авторуВ закладки on 14-Май-05, 15:40  (MSK)
>Экспереминет показал, что нормальное отображение возможно только, если клиент сказя кодировка равна
>кодировки базы данных
>те так:
>Server characterset:    latin1
>Db     characterset:    cp1251
>Client characterset:    latin1
>Conn.  characterset:    latin1
>работать не будет
>
>а так:
>Server characterset:    latin1
>Db     characterset:    cp1251
>Client characterset:    cp1251
>Conn.  characterset:    cp1251
>будет.
>
>вопрос:
>как жестко задать кодировку для всех клиентов? (если такое возможно)
>или как задать кодировку для php-mysql?


эх ребята, ребята:

http://phpclub.ru/faq/wakka.php?wakka=MysqlCharset&v=1mi
http://www.mysql.ru/ - поиск по форуму
http://xpoint.ru/forums/computers/dbms/mysql/thread/30677.xhtml

хотя более правильные советы на форуме php

Большинство же кодеров и администраторов БД MySQL предпочитает в качестве
default использовать koi8r и проивзодить конвертацию на лету.

http://dev.mysql.com/doc/mysql/en/charset-upgrading.html

ну и еще возможны проблемы при поднятии версии mysql и дампировании БД

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру