Автор Тема: Кириллица в MySQL в терминале  (Прочитано 7783 раз)

Оффлайн Zanzarah

  • Завсегдатай
  • *
  • Сообщений: 62
Доброго времени суток. Подскажите, пожалуйста, в чем проблема. В консоли пишу
UPDATE table SET param='Абырвалг' WHERE id=1;
И вот кириллица не пишется.

А вот через веб интерфейс - нормально заходит.

P.S. Мне так его лень ставить... Уже во вкус вошел в терминале
"Для кого и командная строка дружелюбный интерфейс" (С)

Оффлайн yaleks

  • Мастер
  • ***
  • Сообщений: 6 233
Re: Кириллица в MySQL в терминале
« Ответ #1 : 27.11.2018 23:24:12 »
у вас для таблиц какая кодировка установлена?

Оффлайн Zanzarah

  • Завсегдатай
  • *
  • Сообщений: 62
Re: Кириллица в MySQL в терминале
« Ответ #2 : 27.11.2018 23:25:57 »
у вас для таблиц какая кодировка установлена?
utf8

UPD: Т.е. когда я печатаю на английской раскладке - все идет, как только переключаюсь на русскую - все там же и стоит, переключился обратно пошло. Таким образом, команда:
UPDATE table SET param='Абырвалг' WHERE id=1;перед клацанием по Enter'у имела вид:
UPDATE table SET param='' WHERE id=1;
« Последнее редактирование: 27.11.2018 23:34:18 от Zanzarah »
"Для кого и командная строка дружелюбный интерфейс" (С)

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 920
    • Домашняя страница
    • Email
Re: Кириллица в MySQL в терминале
« Ответ #3 : 28.11.2018 07:23:44 »
Что locale показывает? Ввод кириллицы в самой консоли нормальный?
Андрей Черепанов (cas@)

Оффлайн Zanzarah

  • Завсегдатай
  • *
  • Сообщений: 62
Re: Кириллица в MySQL в терминале
« Ответ #4 : 29.11.2018 22:50:54 »
Что locale показывает? Ввод кириллицы в самой консоли нормальный?
[root@zan-pc project]# locale
LANG=ru_RU.UTF-8
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=

И в самой консоли - все норм:
[root@zan-pc project]# Абыр!
bash: Абыр!: команда не найдена
"Для кого и командная строка дружелюбный интерфейс" (С)

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 920
    • Домашняя страница
    • Email
Re: Кириллица в MySQL в терминале
« Ответ #5 : 29.11.2018 23:01:26 »
Первой командой в консоли MySQL должно быть:

\CUTF8
Андрей Черепанов (cas@)

Оффлайн Zanzarah

  • Завсегдатай
  • *
  • Сообщений: 62
Re: Кириллица в MySQL в терминале
« Ответ #6 : 29.11.2018 23:22:16 »
mysql> \CUTF-8
Charset changed
mysql> sadsd

А по-русски все равно не хочет

На всякий случай: mysql> SHOW VARIABLES LIKE 'character_set%';
+--------------------------+----------------------------+
| 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/ |
+--------------------------+----------------------------+
8 rows in set (0,00 sec)
« Последнее редактирование: 29.11.2018 23:24:26 от Zanzarah »
"Для кого и командная строка дружелюбный интерфейс" (С)

Оффлайн Zanzarah

  • Завсегдатай
  • *
  • Сообщений: 62
Re: Кириллица в MySQL в терминале
« Ответ #7 : 24.12.2018 22:50:39 »
Апну тему.

Где то в интернете писали, что utf8 и utf-8 разные кодировки.
Исходя из выше перечисленного - вопрос:
Как можно привести кодировку ОС и СУБД к общему знаменателю?
"Для кого и командная строка дружелюбный интерфейс" (С)

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Re: Кириллица в MySQL в терминале
« Ответ #8 : 24.12.2018 23:04:41 »
Где то в интернете писали, что utf8 и utf-8 разные кодировки.
Даже не так. utf-8 - это кодировка, а utf8 - набор символов. Хотя, в силу разныхпричин, utf8 часто считают за utf-8. :-)

https://www.iana.org/assignments/character-sets/character-sets.xhtml
« Последнее редактирование: 24.12.2018 23:07:06 от asy »