Redmine русские буквы отображаются знаками вопроса ??? – неправильная кодировка в базе данных.

Если в Redmine русскоязычный интерфейс отображается корректно, а вот содержимое, например, статья в Wiki, вместо русских букв пишет ??? типа как тут:

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

1. Идем в MYSQL

mysql -uroot -p

2. Узнаем кодировку базы:

use our_database_name;
show variables like “character_set_database”;

Если показывает что-то типа

+————————+——–+
| Variable_name          | Value  |
+————————+——–+
| character_set_database | latin1 |
+————————+——–+

то у нас стоит англоязычная кодировка и “кина не будет”.
3. Юзаем команду 
alter database `redmine_successionua` character set utf8;
Если не помогло, типа как мне, то надо чуток попотеть. 
4. Выходим с мускуля. И дампим нашу базу:
mysqldump -uroot -p our_database_name –allow-keywords –create-options –complete-insert –default-character-set=latin1 –add-drop-table > dump.sql

cp dump.sql /tmp

nano dump.sql
5. Редактируем дамп. Ищем слово latin1 (или какую вам кодировку выдало) и меняем на нужную нам (в моем случае utf8). З. Ы. кодировка должна быть в синтаксисе оператора CREATE TABLE или CREATE DATABASE.

6. После замены заливаем базу обратно:

mysql -uroot -p our_database_name –default-character-set=utf8 < dump.sql

Всё, русские буквы в Redmine должны корректно отображаться.
http://geckich.blogspot.com/

Leave a Reply

Your email address will not be published. Required fields are marked *