|
|
|
Процедура с полями datetime => latin1_swedish_ci в binlog
|
|||
|---|---|---|---|
|
#18+
Добрый день. Включен бинлог, который не заливается из-за строк вида `поле`= NAME_CONST('параметр процедуры',_latin1'пришедшее значение' COLLATE 'latin1_swedish_ci') Данные мускуля: Версия - 5.5.35. character_set_client utf8mb4 character_set_connection utf8mb4 character_set_database cp1251 character_set_filesystem binary character_set_results utf8mb4 character_set_server utf8 character_set_system utf8 character_sets_dir /usr/share/mysql/charsets/ collation_connection utf8mb4_general_ci collation_database cp1251_general_ci collation_server utf8_general_ci В процедуре параметр указан `параметр процедуры` datetime Как видно из данных выше, кодировки latin1 нигде нет, но в бинлог упорно пишутся строки с latin1_swedish_ci именно для полей в формате DateTime, а для varchar кодировка берется от базы. Пишут, что можно использовать CAST, но там надо явно указывать кодировку, а в данном случае для начала интересует, откуда вообще взялась кодировка latin1. Я понимаю, что она идет по умолчанию, но в конфиге мускуля прописана utf8. Вопросы: 1. Откуда в бин-логе взялась кодировка latin1, если параметрах ее нет? 2. Почему при замене latin1 во всем файле с запросами (извлечено с помощью mysqlbinlog) на cp1251 все равно мускуль ругается на latin1_swedish_ci? Связано ли это со строками в логе SET @@session.character_set_client=45,@@session.collation_connection=45,@@session.collation_server=33/*!*/; Заранее спасибо за ответы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2016, 16:57 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39259042&tid=1831653]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
189ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 245ms |
| total: | 511ms |

| 0 / 0 |
