Перейти к содержимому

Фотография
- - - - -

Ошибка при изменении файла конфигурации


  • Вы не можете создать новую тему
  • Закрытая тема Тема закрыта
Сообщений в теме: 5

#1 Positive_fun

Positive_fun

    Прохожий

    Топикстартер
  • Участник
  • 11
    64 сообщ.

Отправлено 26 Январь 2013 в 13:21

Увидел проблемы с кодировкой что не то что бы при выводе из БД знаки вопроса а прям в самой БД когда смотришь через phpmyadmin тоже отображаются знаки вопроса начал искать решение, нашел решение путем добавления:

skip-character-set-client-handshake
default-character-set=utf8
init-connect='SET NAMES utf8'
default-collation=utf8_general_ci

этих строк в sudo gedit -w /etc/mysql/my.cnf
В секцию [mysqld].
Но при добавлении в абсолютно любое место выбивает ошибку в консоли при соединении:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

и в phpmyadmin тоже:
#2002 Невозможно подключиться к серверу MySQL

Не удалось установить подключение для пользователя указанного в директиве controluser, с помощью параметров определенных в конфигурационном файле config.inc.php.

Вот результат команды \s

Connection id: 47
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.5.29-0ubuntu0.12.04.1 (Ubuntu)
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: latin1
Db characterset: latin1
Client characterset: utf8
Conn. characterset: utf8
UNIX socket: /var/run/mysqld/mysqld.sock

и команды SHOW VARIABLES LIKE 'character%':

+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
Подскажите в чем проблема.
  • 0

Спонсор

#2 ALEXu

ALEXu

    в сером

  • Участник
  • 77
    307 сообщ.

Отправлено 28 Январь 2013 в 12:18

Поробуй так:
[mysqld]
collation-server = utf8_unicode_ci
character-set-server = utf8
[client]
default-character-set=utf8

  • 0

#3 Positive_fun

Positive_fun

    Прохожий

    Топикстартер
  • Участник
  • 11
    64 сообщ.

Отправлено 28 Январь 2013 в 19:55

В phpmyadmin везде стоит utf8_general_ci
Вот все вроде хорошо:
Connection id:  88
Current database:
Current user:  root@localhost
SSL:   Not in use
Current pager:  stdout
Using outfile:  ''
Using delimiter: ;
Server version:  5.5.29-0ubuntu0.12.04.1 (Ubuntu)
Protocol version: 10
Connection:  Localhost via UNIX socket
Server characterset: utf8
Db	 characterset: utf8
Client characterset: utf8
Conn.  characterset: utf8
UNIX socket:  /var/run/mysqld/mysqld.sock
Uptime:   2 min 31 sec

******************************************

+--------------------------+----------------------------+
| Variable_name		    | Value					  |
+--------------------------+----------------------------+
| character_set_client	 | utf8					   |
| character_set_connection | utf8					   |
| character_set_database   | utf8					   |
| character_set_filesystem | binary					 |
| character_set_results    | utf8					   |
| character_set_server	 | utf8					   |
| character_set_system	 | utf8					   |
| character_sets_dir	   | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

Но все равно знаки вопроса при вводе кириллицы подскажи в чем дело.

Вот выдает такой warning:
Warning (Code 1366): Incorrect string value: '\xD1\x8B\xD1\x8B\xD1\x8B...' for column 'name' at row 1

  • 0

#4 diodik

diodik

    Прохожий

  • Участник
  • 4
    61 сообщ.

Отправлено 29 Январь 2013 в 01:23

Вот выдает такой warning:

Warning (Code 1366): Incorrect string value: '\xD1\x8B\xD1\x8B\xD1\x8B...' for column 'name' at row 1

по этому коду могу сказать, что в колонке "name" неправильно задана величина (string) для символов в 16-ричном коде. попробуйте сменить значение колонки (вручную в том же phpmyadmin отредактируйте), либо тогда смените кодировку символов.
  • 0

#5 Positive_fun

Positive_fun

    Прохожий

    Топикстартер
  • Участник
  • 11
    64 сообщ.

Отправлено 29 Январь 2013 в 02:21

Спасибо, открыл таблицу и там в поле сравнение стояла другая кодировка. А я то думал что уже везде где только можно поставил utf8.

Сообщение отредактировал Positive_fun: 29 Январь 2013 в 02:22

  • 0

#6 diodik

diodik

    Прохожий

  • Участник
  • 4
    61 сообщ.

Отправлено 31 Январь 2013 в 00:37

всегда рады, спрашивайте еще. насколько понял все дело было в '\xD1\x8B\xD1\x8B\xD1\x8B...'?
  • 0



Похожие темы Свернуть

Статистика

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 скрытых пользователей