The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Кодировки в разных версиях Mysql"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (MySQL)
Изначальное сообщение [ Отслеживать ]

"Кодировки в разных версиях Mysql"  +/
Сообщение от misterf (ok) on 21-Май-12, 07:20 
Ситуация такая.
Есть Mysql server 4.1 с базой в кодировке cp1251
Все работает нормально
решил перенести сайт на php 5.3 на другой сервер(база осталась на старом)
на другом сервере mysql клиент 5.5
Теперь при выборке из базы знаки ???????.
php функция mysql_client_encoding показывает кодировку latin1

При этом в mysql show create table .... показывает DEFAULT CHARSET=cp1251

Вот конфигурация переменных сервера 4.1

|character_set_client             | cp1251                                 |
| character_set_connection        | cp1251                                 |
| character_set_database          | cp1251                                 |
| character_set_results           | cp1251                                 |
| character_set_server            | cp1251                                 |
| character_set_system            | utf8                                   |
| character_sets_dir              | /usr/local/mysql/share/mysql/charsets/ |
| collation_connection            | cp1251_general_ci                      |
| collation_database              | cp1251_general_ci                      |
| collation_server                | cp1251_general_ci                      |


При этом, если в php скрипте поставить  set names 'cp1251', то все работает нормально, но можно ли обойтись без этих костылей?

Переносил базу на тестовый сервер 5.5 там при таких же настройках все нормально.

Есть у кого-нибудь мысли, как исправить ситуацию, не переписывая скрипт сайта?
Весь интернет уже перечитал.

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Кодировки в разных версиях Mysql"  +/
Сообщение от PavelR (ok) on 21-Май-12, 09:01 
>[оверквотинг удален]
> | collation_server          
>      | cp1251_general_ci    
>            
>       |
> При этом, если в php скрипте поставить  set names 'cp1251', то
> все работает нормально, но можно ли обойтись без этих костылей?
> Переносил базу на тестовый сервер 5.5 там при таких же настройках все
> нормально.
> Есть у кого-нибудь мысли, как исправить ситуацию, не переписывая скрипт сайта?
> Весь интернет уже перечитал.

Еще не весь:
http://www.opennet.me/openforum/vsluhforumID8/4432.html#6
http://lmgtfy.com/?q=my.cnf+init+cp1251&l=1

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

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

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




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

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