[Решено] Проблема с кодировкой в mysql 5.5.31-0+wheezy1. Господа помогите!

Автор moskov199, 22 июля 2013, 23:22:45

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

moskov199

В общем суть проблемы: имеется сайт с базой данных и кодировкой соответственно: Default character set cp1251; collation cp1251_general_ci; set NAMES utf8. На сайте идет выборка из бд, в результате возвращаются данные с вопросами (???????????????   ????????). Вот не могу понять в чем причина вроде все тоже самое указал в my.cnf и даже init-connect = 'SET NAMES utf8'. Вот часть настроек из my.cnf:

[client]
port      = 3306
socket      = /var/run/mysqld/mysqld.sock
character-set-dir = /usr/share/mysql/charsets
default-character-set = cp1251
# The following values assume you have at least 32M ram

# This was formally known as [safe_mysqld]. Both versions are currently parsed.
[mysqld_safe]
socket      = /var/run/mysqld/mysqld.sock
nice      = 0

[mysqld]
character-set-server=cp1251
collation-server=cp1251_general_ci
init_connect='SET NAMES utf8'
user      = mysql
pid-file   = /var/run/mysqld/mysqld.pid
socket      = /var/run/mysqld/mysqld.sock
port      = 3306
basedir      = /usr
datadir      = /var/lib/mysql
tmpdir      = /tmp
lc-messages-dir   = /usr/share/mysql
skip-external-locking
#
# * Fine Tuning
#
key_buffer      = 16M
max_allowed_packet   = 16M
thread_stack      = 192K
thread_cache_size       = 8
# This replaces the startup script and checks MyISAM tables if needed
# the first time they are touched
myisam-recover         = BACKUP
#max_connections        = 100
#table_cache            = 64
#thread_concurrency     = 10
#
Самое интересное что такие же настройки в denwer для windows работают - все отображается правильно, а вот на linux debian 7 под mysql 5.5.31-0+wheezy1 данные в виде: ?????? (до этого тоже был косяк в denwere но все решилось установкой  init-connect = 'SET NAMES utf8' ), в даннном случае init-connect не работает почему-то. В чем причина? Буду очень благодарен:) Ниже выкладываю полный my.cnf если кому надо...

qupl

Так может быть set names cp1251 , раз collation такой же ?

moskov199

Бессполезно, уже пробовал(. Может из-за того что строка в my.cnf - init-connect не там стоит в блоке [mysqld]?

ihammers

Дамп базы как делали? Кодировку при дампе указывали? По умолчанию дамп делается в utf8 даже если база в cp1251.
Или данные уже добавлялись в этой базе, которую потом обновили до новой версии? Используете PHP? Как обращаетесь к данным, указываете с какой кодировкой работаете?
Debian GNU/Linux Bookworm, LXQt/OpenBox: AMD Ryzen 5 5600G / 64Gb RAM
_______________________________
Debian GNU/Linux Bookworm, без графики: AMD Phenon X4 / 16Gb RAM
_______________________________
Debian GNU/Linux Bookworm, LXQt/OpenBox: Acer Aspire One 722 AMD C60 / 8Gb RAM / ATI HD6290